扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1、打开代码窗口,添加引用:Imports System.Data.SqlClient。
专注于为中小企业提供成都网站设计、成都网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业抚远免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了1000多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
2、输入以下代码:
“Public conn1 As SqlConnection = New SqlConnection _
("server=192.168.1.79; Initial Catalog= student; User ID= panqe;PWD=shentai768@")”,vb就已经成功连接sql数据库了。
3、代码详解:声明关键字Public(因为是全局变量,所以用Public 来声明)。
4、连接参数。
5、如果SQL 数据库就在本机,则用以下代码连接:
("server=.; Integrated Security=False;Initial Catalog= student; User ID= panqe;PWD=shentai768@")。
6:如果代码太长,影响可读性,可以用空格加"_"后,回车换行。
1、打开代码窗口,添加引用:Imports System.Data.SqlClient。
2、输入以下代码:
“Public conn1 As SqlConnection = New SqlConnection _
("server=192.168.1.79; Initial Catalog= student; User ID= panqe;PWD=shentai768@")”,vb就已经成功连接sql数据库了。
3、代码详解:声明关键字Public(因为是全局变量,所以用Public 来声明)。
4、连接参数。
5、如果SQL 数据库就在本机,则用以下代码连接:
("server=.; Integrated Security=False;Initial Catalog= student; User ID= panqe;PWD=shentai768@")。
6:如果代码太长,影响可读性,可以用空格加"_"后,回车换行。
Public Function ConnectString() _
As String
ConnectString = "FileDSN=info.dsn;UID=sa;PWD=23" '连接字符器,改成你自己的
End Function
Public Function ExecuteSQL(ByVal SQL _
As String, MsgString As String) _
As ADODB.Recordset '这里是执行SQL语句,你只需要调用这个方法,把SQL查询语句参数传进来,最后返回一个Recordset
Dim cnn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim sTokens() As String
On Error GoTo ExecuteSQL_Error
sTokens = Split(SQL)
Set cnn = New ADODB.Connection
cnn.Open ConnectString
If InStr("INSERT,DELETE,UPDATE", _
UCase$(sTokens(0))) Then
cnn.Execute SQL
MsgString = sTokens(0) _
" query successful"
Else
Set rst = New ADODB.Recordset
rst.Open Trim$(SQL), cnn, _
adOpenKeyset, _
adLockOptimistic
'rst.MoveLast 'get RecordCount
Set ExecuteSQL = rst
MsgString = "查询到" rst.RecordCount _
" 条记录 "
End If
ExecuteSQL_Exit:
Set rst = Nothing
Set cnn = Nothing
Exit Function
ExecuteSQL_Error:
MsgString = "查询错误: " _
Err.Description
Resume ExecuteSQL_Exit
End Function
Public Function Testtxt(txt As String) As Boolean
If Trim(txt) = "" Then
Testtxt = False
Else
Testtxt = True
End If
End Function
启动VB6.0,新建一个工程,在菜单-工程-引用里选"Microsoft ActiveX Data Objects 2.0 Library",代码里需要有
dim conn As New ADODB.Connection
定义ADO数据库对象
conn.ConnectionString = "driver={SQL Server};" _
"server=" ServerName ";uid=" UserName ";
pwd=" Password ";database=" DatabaseName ""
连接数据串
conn.open 连接数据库
注:ServerName为服务器名;UserName为用户名;Password为用户口令; DatabaseName要登录的数据库名,可以为空。
核心代码如下:
一、建立数据库
原理:建立数据库先要初始化一个数据库设备,然后在此设备上建立数据库。所有的设备名在系统表"sysdevices"里有记录,所有的数据库名在系统表"sysdatabases"里有记录。在建立之前,最好先查询这两个系统表,看名称是否已经存在。在建立设备之前,还需要的一个物理名和空闲的设备标识号。
初始化设备语法:
DISK INIT NAME="device_name",PHYNAME=
"physical_name",VDEVNO=device_number,
SIZE=numberofblock
说明:这里,NAME是数据库设备名(一个有效的标识符),PHYNAME(数据库设备的物理名)是原始的磁盘分区UNIX或外设(vms)名,或者是操作系统的文件名。VDEVNO时数据库的设备标识号,合法值为1-255,SIZE的单位是2KB的块,例如1MB(1024KB)时SIZE值为512。
建立数据库语法:CREATE DATABASE database_name [ON database_device]
说明:database_name是要建的数据库名,database_device是设备名
要新建立一个数据库,就需要设备名,数据库名,物理名和设备号。具体步骤如下:
我们假设用户要新建立设备dbName,在设备dbName上建立数据库dbName。
1)得到设备名 bName是用户给出的设备名;先查询系统表sysdevices,看用户给出的设备名dbName是否已经存在,如果此设备名存在,就需要更换一个设备名,因为设备名是唯一的。
sql = "select * from sysdevices
where name=" dbName ""
Set rs = conn.Execute(sql)
If Not rs.EOF Then
MsgBox "设备名"" dbName ""
已存在!", 16, "请重新输入名称"
Exit Sub
End If
2)得到数据库名。dbName是用户给出的数据库名;查询系统表sysdatabases,看用户给出的数据库名dbName是否已经存在,如果此数据库存在,就需要更换一个数据库名,像设备名一样,数据库名也是唯一的
sql = "select * from sysdatabases
where name=" dbName ""
Set rs = conn.Execute(sql) 下面代码略
3)得到PHYNAME物理名。查询服务器上数据库文件的物理位置serverpath,典型的,我们可以从系统表sysdevices中查询master(这是SQL Server的主库名)数据库的位置,例如G:\MSSQL\DATA\MASTER.DAT,则我们的数据库可以建在"G:\MSSQL\DATA\"目录下。
sql = "select name,phyname from sysdevices "
low/16777216为设备号
Set rs = conn.Execute(sql)
然后遍历记录对象rs,当name="master"时,取出phyname,
从而可以得到物理位置serverpath =G:\MSSQL\DATA\。
4)得到一个空闲的设备号vdevno。设备号合法值1~255,遍历这些号,查找出未被使用的空闲设备号,下面程序得到已有的设备号
sql = "select distinct low/16777216
from sysdevices order by low/16777216"
low/16777216为设备号
5)建立数据库。所需的信息都准备完毕,可以建立数据库了(注:下面的"" Chr(34) ""就是一个"""双引号,这样处理后,才能满足语法要求;数据库为20M,则dbSize=512*20)
sql = "DISK INIT NAME=" Chr(34) ""
dbName "" Chr(34) ",PHYSNAME="
Chr(34) "" serverpath "" dbName
".dat" Chr(34) ",VDEVNO=" vdevno
",SIZE=" dbSize ""
Set rs = conn.Execute(sql) 初始化设备
sql = "CREATE DATABASE " dbName "
on " dbName "=" dbSize ""
注:
第一个dbName是数据库名,
第二个dbName是设备名
Set rs = conn.Execute(sql)
在设备dbName上建立数据库dbName
MsgBox "数据库"" dbName ""建在服务器上
"" serverpath "" dbName ".dat",
建立成功!", 64, "成功"
这个例子中既有连接数据库和显示数据库数据的内容,参考一下。有问题再追问吧,望采纳。
Imports System.Data.SqlClient Public Class Form1 Dim LeafSqlConnection As SqlConnection '声明这些SQL的类 Dim LeafSqlCommand As SqlCommand Dim LeafSqlDataAdapter As SqlDataAdapter Dim LeafData As DataTable '定义一个leafdata对象(是存放数据库表信息的),这个是表格的类,用来装你读取的信息的表 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click LeafSqlConnection = New SqlConnection("Data Source=.;Initial Catalog=你的数据库名称 ;Integrated Security=True;Pooling=False") '如果采用windows身份登录就用这个,数据库名称我直接写成'你的数据库名称'了,没有用户名密码 'LeafSqlConnection = New SqlConnection("Initial Catalog=你的数据库名称 ;User ID=sa;PWD=leafsoftpassword") '如果采用SQL用户密码登录用这个,注意的是前面这些数据库名称我直接写成'你的数据库名称'了,你如果要读别的数据库自己改,还有用户密码自己改 LeafSqlCommand = New SqlCommand("Select * from 表1 Where 姓名='小强';", LeafSqlConnection) '这里记得名字的两边要加符号 ' LeafSqlDataAdapter = New SqlDataAdapter LeafSqlCommand.CommandType = CommandType.Text LeafSqlDataAdapter.SelectCommand = LeafSqlCommand LeafData = New DataTable LeafSqlDataAdapter.Fill(LeafData) DataGridView1.DataSource = LeafData End Sub End Class
希望能解决您的问题。
Private Sub Command1_Click()
Dim conn As ADODB.Connection
Dim strSql As String
Set conn = OpenConnForSqlServer("127.0.0.1", "sa", "sa")
strSql = "update table set tm1=111 where tm1=222 "
RunTrans strSql, conn
end sub
Public Function OpenConnForSqlServer(ByVal ServerName As String, ByVal UserId As String, ByVal PassWord As String, Optional ByVal DateBaseName As String = "") As ADODB.Connection
Dim AdoConn As New ADODB.Connection
Dim strConn As String
With AdoConn
strConn = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=" UserId ";Password=" PassWord ";Data Source=" ServerName
If DateBaseName "" Then strConn = strConn ";database=" DateBaseName
.ConnectionString = strConn
.Open
End With
Set OpenConnForSqlServer = AdoConn
End Function
Public Function RunTrans(ByVal tranSql As String, ByVal AdoConn As ADODB.Connection)
With AdoConn
.BeginTrans
.Execute tranSql
.CommitTrans
End With
End Function
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流