通过SPT创建C-S数据库方法

来源:计算机等级考试    发布时间:2012-08-28    计算机等级考试视频    评论

  曾经用sqldmo创建远程数据库、表、权限等方法,为了少带sqldmo的dll,现在改为直接用spt创建,下面是我已经写完工的部分,资源共享:)发上来供大家参考并请多多指教!谢谢!
  parameters cservername,cuser,cpassword,cdatabase
  sqldisconnect(0) &&断开所有连接
  lsconn='driver=sql server;server='+cservername+';uid='+cuser+';pwd='+cpassword+';database=master'
  lnconn=sqlstringconnect(lsconn) &&建立连接句柄
  if lnconn>0
  *!* 1. 建新数据库
  sqlexec(lnconn,'select cast(filename as char(200)) sys_path from sysfiles','mycursor')
  sqlpath=alltrim(left(mycursor.sys_path,rat('/',alltrim(mycursor.sys_path))))
  wait window "正在创建 ["+cdatabase+"] 数据库,请稍候......" nowait
  sqlexec(lnconn,"sp_databases","mycursor") &&列出服务器上的数据库
  select mycursor
  go top
  locate for alltrim(upper(mycursor.database_name))==alltrim(upper(cdatabase))
  if !found()
  csql="create database "+alltrim(cdatabase)
  csql=csql+" on "
  csql=csql+" ( name = "+alltrim(cdatabase)+"_dat,"
  csql=csql+" filename = '"+sqlpath+alltrim(cdatabase)+"_dat.mdf',"
  csql=csql+" size = 4,"
  csql=csql+" filegrowth = 2 )"
  csql=csql+" log on "
  csql=csql+" ( name = "+alltrim(cdatabase)+"_log,"
  csql=csql+" filename = '"+sqlpath+alltrim(cdatabase)+"_log.ldf',"
  csql=csql+" size = 2mb,"
  csql=csql+" filegrowth = 2mb )"
  if sqlexec(lnconn,csql)<=0
  messagebox(cdatabase+' 数据库创建失败!',16,'information',3000)
  sqldisconnect(0) &&断开所有连接
  return
  endif
  else
  if messagebox(cdatabase+' 数据库已经存在,继续吗?', 20 ,'information')=7
  sqldisconnect(0) &&断开所有连接
  return
  endif
  endif
  sqldisconnect(0)
  lsconn='driver=sql server;server='+cservername+';uid='+cuser+';pwd='+cpassword+';database='+cdatabase
  lnconn=sqlstringconnect(lsconn) &&建立连接句柄
  if lnconn<=0
  messagebox(cdatabase+' 数据库连接失败!',16,'information',3000)
  return
  endif
  sqltables(lnconn,"'table'","mycursor") &&列出数据表

  *!*创建menuitem表
  if !foundtable('menuitem')
  csql='create table [dbo].[menuitem] ('
  csql=csql+'[autoid] [int] identity (1, 1) not null ,'
  csql=csql+'[menuid] [char] (9) not null constraint pk_menuitem primary key,'
  csql=csql+'[menutype] [char] (1) not null ,'
  csql=csql+'[menucaption] [varchar] (16) not null ,'
  csql=csql+'[menucommand] [varchar] (40) null ,'
  csql=csql+'[menumessage] [varchar] (40) null ,'
  csql=csql+'[menupicture] [varchar] (40) null ,'
  csql=csql+'[menukey] [varchar] (10) null ,'
  csql=csql+'[menubase] [bit] not null )'
  if sqlexec(lnconn,csql)<=0
  messagebox('menuitem 表创建失败!',64,'infomation',2000)
  else
  =txtmenutodbf()
  endif
  endif

上一页1234下一页

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答