如何在vb代码中编写创建数据库及表的SQL代码及调用过程,能否帮小弟写一个例子,谢谢,还有就是在SQL语句中怎样用代码完成表结构中的关键字段设置及相关表关联操作,谢谢!!!
如:
表Table:字段数:a,b,c
创建表sql语句:
CREATE TABLE [dbo].[Table] (
[a] [char] (15) COLLATE Chinese_PRC_CI_AS NULL ,
[b] [char] (15) COLLATE Chinese_PRC_CI_AS NULL ,
[c] [tinyint] NULL
)
请问:如何在VB程序中执行上面sql语句,谢谢!
如:
表Table:字段数:a,b,c
创建表sql语句:
CREATE TABLE [dbo].[Table] (
[a] [char] (15) COLLATE Chinese_PRC_CI_AS NULL ,
[b] [char] (15) COLLATE Chinese_PRC_CI_AS NULL ,
[c] [tinyint] NULL
)
请问:如何在VB程序中执行上面sql语句,谢谢!
解决方案 »
- BOM表与订单的 二表联合查询
- 如何使两个exe文件同时执行?
- Datagrid实时错误'6153',数值字段溢出
- 为什么vb连ACCESS在水晶报表打印会弹出要access的密码
- 超级解霸3000和金山影霸都具有桌面背景播放功能,
- 图形变换: 设计三个图形(三角形, 正方形, 正五边形),实现循环地绕图形中心点旋转并动态地移动。
- 高手请试试:利用CommonDialog控件可以获取文件的绝对路径,但如何获取共享的网络路径?
- ADO multi-dimensional 2.X 和ADO2.X有如何的区别 另外关于客户机ADO安装的问题
- 请教,data控件怎么连接带密码的access数据库?
- 谁知如何拦截IE(Webbrowser)的新窗口???
- 高分求:如何在文本文件中删除部分记录??????
- 在键盘中点击H,我想让他显示为00,不显示为H,在VB中怎么做啊???在线等!!!!
'''''''''''''''使用此方法可以不建立DSN,直接使用Sql数据库,或ACCESS数据库
On Error GoTo BBB
'sSQL = "CREATE TABLE TableName(ID INT PRIMARY KEY,姓名 varchar(30),日期 DateTime,金额 money) "
Dim Cn As New ADODB.Connection
Set Rs = New ADODB.Recordset
If sServer = "" Then
Cn.Open "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & sDB & ";", sUser, sPwd
Else
Cn.Open "DRIVER={SQL Server};SERVER=" & sServer & ";DATABASE=" & sDB & ";", sUser, sPwd
End If
Rs.Open sSQL, Cn, adOpenStatic, adLockOptimistic
OpenDB = True
Set Cn = Nothing
Exit Function
BBB: 'MsgBox Err.Description
End Function
(录入日期:2001.07.07 阅读次数:3812) 转载不详
作者:不详 --------------------------------------------------------------------------------
用VB建立Access数据库结构
Private Sub Command1_Click()On Error GoTo Err100注释:定义表与字段
Dim DefDatabase As Database
Dim DefTable As TableDef, DefField As FieldSet DefDatabase = Workspaces(0).OpenDatabase(App.Path & "\vbeden.mdb", 0, False)
Set DefTable = DefDatabase.CreateTableDef("VB编程乐园")注释:dbBinary = 9
注释:dbBoolean = 1
注释:dbByte = 2
注释:dbChar=18
注释:dbDate=8
注释:dbInteger=3
注释:dbLong=4
注释:dbMemo=12
注释:dbText=10注释:建立Name字段为8个字符型
Set DefField = DefTable.CreateField("Name", dbText, 8)
DefTable.Fields.Append DefFieldSet DefField = DefTable.CreateField("Sex", dbText, 2)
DefTable.Fields.Append DefField注释:该字段允许为空
DefField.AllowZeroLength = True
注释:建立Age字段为3个的常整型
Set DefField = DefTable.CreateField("Age", dbInteger, 3)
注释:字段追加
DefTable.Fields.Append DefField注释:表追加
DefDatabase.TableDefs.Append DefTableMsgBox " VB编程乐园数据库建立完成!", vbInformationExit SubErr100:
MsgBox "对不起,不能建立表。请先再建表前建立VBEden数据库? ", vbCriticalEnd SubPrivate Sub cmdCreate_Click()On Error GoTo Err100注释:建立名为 VBEDEN 的数据库
CreateDatabase "VB-CODE", dbLangGeneralMsgBox "数据库建立完成! ", vbInformationExit SubErr100:
MsgBox "不能建立数据库! " & vbCrLf & vbCrLf & Err.Description, vbInformationEnd Sub
急。。
'菜单“工程”-->"引用"-->"Microsoft ActiveX Data Objects 2.7 Library"
'Microsoft ADO Ext.2.7 for DDL ado Security
Dim cat As ADOX.Catalog
Set cat = New ADOX.Catalog
cat.Create ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path & "\newdata.mdb" + ";")
MsgBox "数据库已经创建成功!"
Dim tbl As ADOX.Table
Set tbl = New ADOX.Table
tbl.ParentCatalog = cat
tbl.Name = "MyTable"'增加一个自动增长的字段
Dim col As ADOX.Column
Set col = New ADOX.Column
col.ParentCatalog = cat
col.Type = ADOX.DataTypeEnum.adInteger ' // 必须先设置字段类型
col.Name = "id"
col.Properties("Jet OLEDB:Allow Zero Length").Value = False
col.Properties("AutoIncrement").Value = True
tbl.Columns.Append col, ADOX.DataTypeEnum.adInteger, 0'增加一个文本字段
Dim col2 As ADOX.Column
Set col2 = New ADOX.Column
col2.ParentCatalog = cat
col2.Name = "Description"
col2.Properties("Jet OLEDB:Allow Zero Length").Value = False
tbl.Columns.Append col2, ADOX.DataTypeEnum.adVarChar, 25'增加一个货币型字段
Dim col4 As ADOX.Column
Set col4 = New ADOX.Column
col4.ParentCatalog = cat
col4.Type = ADOX.DataTypeEnum.adCurrency
col4.Name = "xx"
tbl.Columns.Append col4, ADOX.DataTypeEnum.adCurrency'增加一个数值型字段
Dim col3 As ADOX.Column
Set col3 = New ADOX.Column
col3.ParentCatalog = cat
col3.Type = ADOX.DataTypeEnum.adDouble
col3.Name = "ll"
tbl.Columns.Append col3, ADOX.DataTypeEnum.adDouble
Dim p As ADOX.Property
For Each p In col3.Properties
Debug.Print p.Name & ":" & p.Value & ":" & p.Type & ":" & p.Attributes
Next'设置主键
tbl.Keys.Append "PrimaryKey", ADOX.KeyTypeEnum.adKeyPrimary, "id", "", ""
cat.Tables.Append tbl
MsgBox "数据库表:" + tbl.Name + "已经创建成功!"
Set tbl = Nothing
Set cat = Nothing
End Sub