SQL查询语言基本教程(3)[1]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 technofantasy 的 blog

sql查询语言基本教程(3)

四、create table 语句
    create table 语句的语法为:
     
 create table table (field1 type [(size)] [not null] [index1]
 [, field2 type [(size)] [not null] [index2] [, ...]]
 [, constraint multifieldindex [, ...]])

table  
    新建立的表的名称
field1 type [(size)] [not null] [index1]
    field1为字段名称,type为字段数据类型,size 为字段宽度,下面表详细
描述了type 的取值以及描述

type  jet数据类型   描述
bit  yes/no    逻辑类型
byte  numberic-byte  字节数字
counter  counter   自动编号
currency currency  货币数字
datetime date/time   日期、时间
double  numberic-double  双精度浮点数字
long  numberic-long  长整数
longbinary ole object  ole object类型
longtext memo   备注类型
short  numberic-integer 整数
single  numberic-single  单精度浮点数字
text  text   文本

not null
    该字段下的值不能为空
index1 
    定义字段约束

范例七:建立学生数据表
    我们还是使用前面提到的db4.mdb文件,建立一个新的工程,加入dao定义库,然后在form1的load事件中加入以下代码:
private sub form_load()
    dim astr as string
    dim dbadd as database
   
    screen.mousepointer = vbhourglass
    set dbadd = dbengine.workspaces(0).opendatabase("c:\db4.mdb")
    astr = "create table tbl_students " & _
        "(stdid counter primary key, " & _
        "stdname text(12) not null, " & _
        "stdage short, " & _
        "stdbir datetime, " & _
        "stdsex bit)"
    debug.print astr
    dbadd.execute astr
   
    screen.mousepointer = vbdefault
    msgbox "数据库建立成功."
    dbadd.close
    set dbadd = nothing
end sub
    运行程序,这时会弹出数据库建立成功的消息框,使用access打开db4.mdb,可以看到表tbl_students已经加入到数据库
中了。在上面的范例中,我们加入一个名称为tbl_students的表并加入5个字段:stdid:学号,自动编号类型,并作为主键;
stdname:学生姓名,长度为12的文本类型,并且不能为空;stdage:学生年龄,整数类型;stdbir:出生日期,日期类型;
stdsex:性别,逻辑类型。
    如果要删除数据库中的表,只要使用语句 drop table 就可以实现表的删除,使用范例如下:
    drop table tblname
    其中tblname为表格的名称。

五:insert into 语句
    insert into语句实现向表中插入数据,该函数可以将一个已存在的表中的数据插入新表,也可以将自定义的值插入新表。
    插入已有的表中的数据的函数语法如下:

    insert into target [(field1[, field2[, ...]])] [in externaldatabase]
    select [source.]sfield1[, sfield2[, ...]
    from tableexpression

    target
 添加数据的表的名称
    field1, field2
 需要添加数据的字段名称
    externaldatabase
 附加的数据库名称
    source
 拷贝数据的表的名称
    sfield1 sfield2
 拷贝数据的字段的名称

    插入新数据的语法如下:
    insert into target [(field1[, field2[, ...]])]
    values (value1[, value2[, ...])

    value1, value2
 插入的值,value1将插入field1,value2将插入field2。

    范例八:向表中插入新数据和其它表中的数据
    我们在前面的范例中,已经向 c:\db4.mdb 中加入了一个名为 db2的表和tbl_students的表,其中db2中包含三个学生
的信息,tbl_students没有包含纪录,现在我们要将db2表中的学生纪录中的学生姓名值附加到tbl_students表的stdname字段
中。下面是具体的添加范例:
    建立一个新的工程,加入dao定义库,然后在form1的form_load事件中加入以下代码:

private sub form_load()
    dim astr as string
    dim dbadd as database
   
    screen.mousepointer = vbhourglass
    set dbadd = dbengine.workspaces(0).opendatabase("c:\db4.mdb")
    astr = "insert into [tbl_students] ([stdname])" & _
        "select distinct db2.学生 from db2 "
    debug.print astr
    dbadd.execute astr
   
    screen.mousepointer = vbdefault
    msgbox "数据添加成功."
    dbadd.close
    set dbadd = nothing
end sub

    运行程序,会弹出数据添加成功的消息框。打开db4.mdb ,可以看到db2表中的学生姓名已经添加到tbl_students中了。
    将astr改变为下面的命令字符串就可以增加一条新纪录:
    astr = "insert into [tbl_students] ([stdname],[stdage],[stdbir],[stdsex])" & _
        "values ('李想', 15, #1985-10-10#, 1)"

六、delete 语句

本文关键:SQL查询语言基本教程(3)
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top