请问CNN.open与CNN.connectionstring有什幺区别?

quanyi 2003-10-02 03:45:19
CNN.Open "provider=sqloledb;server=ntsrv;database=cy_dwh;uid=bb;pwd="

CNN.ConnectionString= "driver={SQLServer};database=cy_dwh;server=ntsrv;uid=bb;pwd="

我在VB6.0中使用后者可以正常对数据库进行操作﹐使用前者只能对数据库进行查询﹐但不能进行修改﹑删除操作﹐这是为什幺?
...全文
88 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
quanyi 2003-10-03
  • 打赏
  • 举报
回复
謝謝rocky老兄
---涛声依旧--- 2003-10-03
  • 打赏
  • 举报
回复
應該是一樣的
不能进行修改﹑删除操作請檢查你的uid是否只有查詢權限。
quanyi 2003-10-02
  • 打赏
  • 举报
回复
to 国庆只放一天假

同志﹐同志﹐他奶奶的台湾佬﹐就放一天假﹐还要我们搬宿舍﹐以前4个人一间﹐现在更惨﹐6个人一间﹐这是我这辈子过得最惨的一次国庆啦﹗我发誓这是第一次﹐也是最后一次﹗
txlicenhe 2003-10-02
  • 打赏
  • 举报
回复
1:应该是一样的
2: 要不用:CNN.Open "driver={SQLServer};database=cy_dwh;server=ntsrv;uid=bb;pwd="

rivate Sub cmdAdd_Click() Dim str1 As String Dim cnn As New ADODB.Connection '数据库连接 If cmdAdd.Caption = "新增" Then '按钮为“新增”状态 cmdAdd.Caption = "保存" '修改按钮标题为“保存”,提示用户保存数据 cmdCancel.Visible = True '显示“取消”按钮 lstbus.Enabled = False '禁止用户操作列表框 LockControl (False) '允许用户操作窗口中部分控件 txtbus.Text = "" '清除“线路名”文本框 txtBeginEnd.Text = "" '清除“运行区间”文本框 cmbTickType.Text = "无人售票" '设置售票类型的默认值 cmbPrice.Text = "上车一元" '设置票价的默认值 optIC2.Value = True '设置不支持IC卡 txtRuntime.Text = "" '清除“运行时间”文本框 txtCompany.Text = "" '清除“公交公司”文本框 txtMemo.Text = "" '清除“备注”文本框 Else If Not CheckInput Then Exit Sub '调用CheckInput函数检查输入数据 cmdAdd.Caption = "新增" '修改按钮标题为“新增” cmdCancel.Visible = False '隐藏“取消按钮" lstbus.Enabled = True '允许用户操作列表框 LockControl (True) '锁定窗口中部分控件 '定义新增数据的SQL语句 str1 = "INSERT INTO [BUS]([bus],[beginend],[ticktype],[price]" str1 = str1 + ",[ic],[runtime],[company],[memo]) VALUES(" 'INSERT INTO语句 str1 = str1 + "'" + txtbus.Text + "','" '线路名 str1 = str1 + txtBeginEnd.Text + "','" '运行区间 str1 = str1 + cmbTickType.Text + "','" '售票类型 str1 = str1 + cmbPrice.Text + "'," '票价 If optIC1.Value Then '是否支持IC卡 str1 = str1 + "true,'" '支持 Else str1 = str1 + "false,'" '不支持 End If str1 = str1 + txtRuntime.Text + "','" '运行时间 str1 = str1 + txtCompany.Text + "','" '公交公司 str1 = str1 + txtMemo.Text + "')" '备注 cnn.ConnectionString = Conn '设置数据库连接字符串 cnn.Open '打开数据库连接 cnn.Execute (str1) '执行INSERT INTO语句插入数据 cnn.Close '关闭数据库连接 Form_Load '调用窗体装载事件代码,重新将线路信息显示在列表框中 End If End Sub Private Sub cmdCancel_Click() '“取消”按钮放弃输入的值 lstbus.Enabled = True '允许用户操作列表框 cmdCancel.Visible = False '隐藏“取消”按钮,使其不可见 cmdAdd.Caption = "新增" '修改“保存”按钮标题为“新增” LockControl (True) '锁定窗口中部分控件 lstbus_Click '调用列表框的单击事件代码 End Sub Private Sub cmdExit_Click() '退出当前窗体 Dim ret As Integer If cmdAdd.Caption = "保存" Then '判断是否有输入的信息未保存 ret = MsgBox("新增数据还未保存,是否退出?", vbQuestion + vbYesNo) '获取用户的选择 If ret = vbNo Then '选择“否” Exit Sub '退出当前过程,则不退出当前窗体 End If End If Unload Me '退出当前窗体 End Sub Private Sub Form_Load() '窗体初始化代码 Dim cnn As New ADODB.Connection '定义数据库连接变量 Dim rst As New ADODB.Recordset '定义记录集变量 LockControl (True) '锁定窗口中部分控件 cnn.ConnectionString = Conn '设置数据库连接字符串 cnn.Open '打开数据库连接 Set rst.ActiveConnection = cnn '设置记录集的数据库连接 rst.Open "SELECT [bus] FROM [bus]" '打开记录集,得到线路名数据 lstbus.Clear '清除列表框中原有内容 Do While Not rst.EOF '循环处理记录集中的数据 lstbus.AddItem rst(0).Value '将线路名添加到列表框中 rst.MoveNext '处理下一记录 Loop If lstbus.ListCount > 0 Then '列表框中有数据 lstbus.ListIndex = 0 '选中第1个数据 End If rst.Close '关闭记录集 cnn.Close '关闭数据库连接 End Sub Private Sub Label2_Click() End Sub Private Sub Label8_Click() End Sub Private Sub lstbus_Click() '单击列表框时,更新右侧的显示数据 Dim cnn As New ADODB.Connection '定义数据库连接 Dim rst As New ADODB.Recordset '定义记录集 Dim str1 As String, str2 As String '临时字符串变量 str1 = lstbus.List(lstbus.ListIndex) '获取列表框中的选中项(可介绍一下列表框) cnn.ConnectionString = Conn '设置数据库连接字符串 cnn.Open '打开数据库连接 Set rst.ActiveConnection = cnn '设置记录集的数据库连接 str2 = "SELECT * FROM [BUS] WHERE BUS='" & Trim(str1) & "'" '定义查询字符串 rst.Open str2 '打开记录集 If Not rst.EOF Then '若记录集不为空,显示内容 'gID = rst("id") '记录关键字 txtbus.Text = rst("bus") '线路名 txtBeginEnd.Text = rst("beginend") '运行区间 cmbTickType.Text = rst("ticktype") '售票类型 cmbPrice.Text = rst("price") '票价 If rst("ic") = True Then '支持IC卡 optIC1.Value = True Else '不支持IC卡
Dim extend_str As String Dim execl_cnn As New ADODB.Connection Dim execl_rst As New ADODB.Recordset Dim execl_count_rst As New ADODB.Recordset '纪录数量 Dim execl_field_rst As New ADODB.Recordset Dim execl_strconn As String Dim execl_strcmd As String Dim execl_count_str As String Dim insertStr As String 操作oracle数据库的记录集 Dim rst As ADODB.Recordset CommonDialog1.ShowOpen extend_str = Right(CommonDialog1.FileName, 3) If (extend_str = "xls") Then execl_cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & CommonDialog1.FileName & _ ";Extended Properties=Excel 8.0;" ElseIf (extend_str = "dbf") Then execl_cnn.ConnectionString = "Provider=MSDASQL.1;Driver=Microsoft Visual Foxpro Driver;SourceType=DBF;DBQ=" & getDir (CommonDialog1.FileName) execl_cnn.Open End If If (extend_str = "xls") Then execl_strcmd = "SELECT * from `Sheet1$` " execl_count_str = "SELECT count(*) from `Sheet1$` " execl_field_rst.Open execl_count_str, execl_cnn If (execl_field_rst.Fields(0).Value = 0) Then execl_strcmd = "SELECT * from [" & getFileNoExt(getfile(CommonDialog1.FileName)) & "$] " execl_count_str = "SELECT count(*) from [" & getFileNoExt(getfile(CommonDialog1.FileName)) & "$] " End If execl_field_rst.Close ElseIf (extend_str = "dbf") Then execl_strcmd = "SELECT * from " & CommonDialog1.FileName execl_count_str = "SELECT count(*) from " & CommonDialog1.FileName End If execl_rst.Open execl_strcmd, execl_cnn execl_count_rst.Open execl_count_str, execl_cnn If (CommonDialog1.FileName "") Then '进度条设置 ProgressBar1.Min = 0 ProgressBar1.max = execl_count_rst.Fields(0).Value If (execl_rst.RecordCount) Then '如果有记录 If (Option1.Value) Then '如果是仪器总库 If (execl_rst.Fields.Count = 8) Then Set rst = yg_gain_table_recordset("yg_device") execl_rst.MoveFirst Do While (Not execl_rst.EOF) rst.AddNew rst.Fields(0).Value = yg_getNextId("yg_device_id") rst.Fields(1).Value = execl_rst.Fields(0).Value & "" rst.Fields(2).Value = execl_r

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧