VB中,怎样正确运用select语句?

"select*fromstudentwhere姓名="'"&Text8.Text&"'""select*fromstudentorderby出生年月"怎样改正确呢?多谢... " select * from student where 姓名 = " '" & Text8.Text & "'"

"select * from student order by 出生年月"

怎样改正确呢?

多谢!!!
这两个句子输入没有问题的话,那么总是显示Adodc1.Refresh不正确的原因是什么呢?
错误说FROM子句语法错误。 student这张表就是我绑定的数据库,那么为什么还是有问题呢?
展开
 我来答
zdingyun
推荐于2016-03-04 · 知道合伙人软件行家
zdingyun
知道合伙人软件行家
采纳数:15429 获赞数:48172
1982年上海业余工业大学化工系毕业 现退休

向TA提问 私信TA
展开全部

select是SQL结构查询语言命令之一。

1)SQL 语句,定义结构查询语言 (SQL) 命令的表达式,例如 SELECT、UPDATE 或 DELETE,也可能包括像 WHERE 和 ORDER BY
这样的子句。SQL 字符串语句一般在查询和 rdoResultset
对象中使用,但也可以用来创建或修改数据库结构。


SQL 语句的语法与数据源有关。

2)SELECT - SQL命令

句法:

SELECT [ALL | DISTINCT] [TOP nExpr [PERCENT]]

[Alias.] Select_Item [AS Column_Name]

[, [Alias.] Select_Item [AS Column_Name] ...]

FROM [FORCE]

[DatabaseName!]Table [[AS] Local_Alias]

[[INNER | LEFT [OUTER] | RIGHT [OUTER] | FULL [OUTER] JOIN

DatabaseName!]Table [[AS] Local_Alias]

[ON JoinCondition …]

[[INTO Destination]

| [TO FILE FileName [ADDITIVE] | TO PRINTER [PROMPT] 

| TO SCREEN]]

[PREFERENCE PreferenceName]

[NOCONSOLE]

[PLAIN]

[NOWAIT]

[WHERE JoinCondition [AND JoinCondition ...]

[AND | OR FilterCondition [AND | OR FilterCondition ...]]]

[GROUP BY GroupColumn [, GroupColumn ...]]

[HAVING FilterCondition]

[UNION [ALL] SELECTCommand]

[ORDER BY Order_Item [ASC | DESC] [, Order_Item [ASC | DESC] ...]]

3)

SELECT - SQL命令例子:

下面的例子说明了如何使用SELECT的用户定义的函数用法。

例子1

例子1 显示所有企业在客户的名称(从一个表中的一个字段)。

SELECT customer.company FROM customer

例子2

例子2 显示两个表中三个字段的内容,并加入基于cust_id字段的两个表。它使用本地别名两个表。

SELECT a.company, b.order_date, b.shipped_on FROM customer a, orders b WHERE a.cust_id = b.cust_id

例子3

例子3 仅显示在指定领域唯一的数据记录。

SELECT DISTINCT a.company, b.order_date, b.shipped_on FROM customer a, orders b WHERE  a.cust_id =  b.cust_id

例子4

例子4 显示国家,邮编和公司按升序领域。

SELECT country, postalcode, company FROM customer ORDER BY country, postalcode, company

4)VB将上述例句作为字符串赋值给ADO数据对象,或者ADO数据访问控件属性,进而完成数据查询。

代码1:

Private Sub Command1_Click()
    Dim cnn As New Connection
    Dim rs As New Recordset
    Dim sql As String
    Dim ARR
    cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\wdOld.mdb;Persist Security Info=False"
    sql = "select 故障名称 from guzhang_bm"
    rs.Open sql, cnn
    Combo1.Text = "故障名称"
    Do While Not rs.EOF
        Combo1.AddItem rs("故障名称")
        rs.MoveNext    '打开表
    Loop
    rs.Close
    cnn.Close
End Sub

代码2:

Private Sub Form_Load()
    Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Program Files\Microsoft Visual Studio\VB98\BIBLIO.MDB;Persist Security Info=False"
    Adodc1.RecordSource = "select * from Authors"
    Adodc1.Refresh
    Debug.Print Adodc1.Recordset.Fields(2).Name
    Set DataGrid1.DataSource = Adodc1
End Sub
doumeimingqu
推荐于2018-03-01 · TA获得超过137个赞
知道答主
回答量:208
采纳率:0%
帮助的人:0
展开全部
" select * from student where 姓名 = " '" & Text8.Text & "'"这个单双引号搞错了!
select * from student where 姓名='"&text1.text&"'
第二句没什么问题啊!
单双引号要在英文状态下输入,否则会出错的!
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
II个人的寂寞
2009-11-23 · TA获得超过1115个赞
知道小有建树答主
回答量:423
采纳率:0%
帮助的人:460万
展开全部
你是想把两句放在一起吧。
" select * from student where 姓名 ='" & Text8.Text & "'" & "order by 出生年月"

注意点:
姓名,在数据库中一般定义为字符串类型的,一定要在值的两边加单引号(’),另外,vb中连接两字符串是用&. 如果你对自己写的sql有疑问,可以在拼出sql后,把该sql打印出来,放在数据库中执行看可以不可以得到结果。也算是调试吧。

在vb中打印语句。
比如 aa="just test"

debug.print aa
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式