当前位置: 首页 > news >正文

网站推广的表现方式网站登录流程图

网站推广的表现方式,网站登录流程图,店铺引流的30种方法,妇科网站源码昨天做系统的安装#xff0c;搞这个搞到头大#xff0c;现在把总结写下巴。 PS#xff1a;贴上来代码的缩进就乱掉了 用SQL Server企业管理器导出的SQL文件是不能直接在ADOQuery里用的#xff0c;因为ADOQuery不支持GO#xff0c;不支持注释#xff0c;视图和存储过程的创…昨天做系统的安装搞这个搞到头大现在把总结写下巴。 PS贴上来代码的缩进就乱掉了 用SQL Server企业管理器导出的SQL文件是不能直接在ADOQuery里用的因为ADOQuery不支持GO不支持注释视图和存储过程的创建也必须放到查询开头所以必须要对企业管理器导出的SQL文件进行处理才能用。 首先导出SQL语句 如图设置       注意这一步“编写主键、外键、默认值和检查约束脚本”别忘了选。文件格式要选ANSI因为貌似TStrings.LoadFromFile这个方法对Unicode的文本支持不好如果你的代码不用TStringList读SQL文件那这里选什么都无所谓。选择创建一个文件可以确保结构按照顺序创建免得多个文件又要搞依赖关系分析哪个要先创建麻烦。 然后创建数据库 强烈建议将用于创建数据库和数据库结构的ADOQuery的ParamCheck属性设置为False (要是非要设置成True后面莫名其妙报个错可别怨我没拦你^_^) 将生成的SQL文件中开头创建数据库的那部分删除就是直到第一句use XXX这里包含这句也一并删除因为创建数据库的语句我们要自己组装。 创建数据库需要知道数据库文件和日志的存放位置(强迫用户指定貌似不太礼貌最好自动获取到)数据库和日志文件初始大小数据库名和排序规则。 取数据库文件和日志存放位置的办法我这里是把第一个库文件的位置当做默认存放位置的 ADOQuery查询master库        SELECT TOP 1 filename FROM sysaltfiles 然后存放默认位置就是IncludeTrailingPathDelimiter(ExtractFilePath(Trim(FieldByName(filename).AsString))) 创建数据库(仍然是在master库里执行)         SQL.Add(Format(IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name N%s),[teDBName.Text]));         SQL.Add(Format(DROP DATABASE [%s],[teDBName.Text]));         SQL.Add(Format(           CREATE DATABASE [%s] ON (NAME N%s_Data, FILENAME N%s%s_Data.MDF , SIZE 7, FILEGROWTH 10%%) LOG ON (NAME N%s_Log, FILENAME N%s%s_Log.LDF , SIZE 7, FILEGROWTH 10%%) COLLATE Chinese_PRC_CI_AS,           [teDBName.Text,teDBName.Text,FDBPath,teDBName.Text,teDBName.Text,FDBPath,teDBName.Text]));         ExecSQL; 这里两个SIZE分别是数据库文件和日志文件的初始大小单位MB。Chinese_PRC_CI_AS为默认排序规则 需要注意的是如果库正在被使用DROP会出错。貌似用SQLDMO可以杀掉连那个库的进程可以用这个野蛮残忍的办法停止对库的使用。。。 修改SQL创建数据库结构 以下需要在刚创建的数据库中执行 1.去掉注释(--和/* */)         Mark:False;         for Index:0 to SQLList.Count-1 do         begin           //--开头           TmpStr:Trim(SQLList[Index]);           if Copy(TmpStr,1,2)-- then             SQLList[Index]:           else begin             if Mark then             begin               if Copy(TmpStr,Length(TmpStr)-1,2)*/ then               begin                 Mark:False;               end;               SQLList[Index]:;             end             else begin               if Copy(TmpStr,1,2)/* then               begin                 Mark:True;                 SQLList[Index]:;               end;             end;           end;         end; 2.去掉go        SQLList.Text:StringReplace(SQLList.Text,#13#10GO#13#10,#13#10,[rfReplaceAll,rfIgnoreCase]); 3.在CREATE VIEW前加exec        SQLList.Text:StringReplace(SQLList.Text,CREATE VIEW ,exec(CREATE VIEW ,[rfReplaceAll,rfIgnoreCase]);         Mark:False;         for Index:0 to SQLList.Count-1 do         begin           if Mark then           begin             //把exec()之中的替换为否则报错             SQLList[Index]:StringReplace(SQLList[Index],,,[rfReplaceAll,rfIgnoreCase]);             if System.Pos(SET ,SQLList[Index])0 then             begin               Mark:False;               //CREATE VIEW结尾加)               SQLList[Index-1]:SQLList[Index-1]);             end;           end           else if System.Pos(exec(CREATE VIEW ,SQLList[Index])0 then           begin             Mark:True;           end;         end; 4.存储过程前加exec 这里注意存储过程中经常出现SET所以不能让SET做为判断CREATE PROCEDURE 结束的标志而要用 SET QUOTED_IDENTIFIER OFF只要是企业管理器导出的创建存储过程语句必定以SET QUOTED_IDENTIFIER OFF紧跟着创建语句         SQLList.Text:StringReplace(SQLList.Text,CREATE PROCEDURE ,exec(CREATE PROCEDURE ,[rfReplaceAll,rfIgnoreCase]);         Mark:False;         for Index:0 to SQLList.Count-1 do         begin           if Mark then           begin             //把exec()之中的替换为否则报错             SQLList[Index]:StringReplace(SQLList[Index],,,[rfReplaceAll,rfIgnoreCase]);             if System.Pos(SET QUOTED_IDENTIFIER OFF,SQLList[Index])0 then             begin               Mark:False;               //CREATE PROCEDURE 结尾加)               SQLList[Index-1]:SQLList[Index-1]);             end;           end           else if System.Pos(exec(CREATE PROCEDURE ,SQLList[Index])0 then           begin             Mark:True;           end;         end; 最后 SQL.Assign(SQLList)可以执行Query了   不过我觉得SQLDMO应该有直接执行SQL语句的功能就是支持GO和注释等的Transact-SQL时间关系没去深入研究SQLDMO我暂时只是把这玩艺拿来刷数据库列表用
http://wiki.neutronadmin.com/news/245786/

相关文章:

  • 石家庄网站制作网站建设论证方案
  • 上海做网站公司html5单页网站
  • 企业网站建设 建立作用全网营销渠道
  • c网站开发wordpress分页阅读
  • 成全免费观看在线看seo快速排名源码
  • 美容美发网站模板本地东莞网站建设
  • 永久免费的网站地址建设公司网站的申请
  • 杭州cms建站模板怎么封闭网站
  • 旅游公司电子商务网站建设策划书建筑工程网络计划技术与应用
  • 怎样做淘宝券网站建站平台营销
  • 深圳做网站公司有哪些seo和网络推广哪个好
  • 网站设计包含哪些技术做爰全过程免费的视频99网站
  • 网站的欢迎页怎么做简易的网站模板
  • 毕业设计做一个网站怎么做北京网站设计工资多少
  • 网站百度收录查询seo权威入门教程
  • 做网站教程pdf哪个dns访问国外网站
  • 南昌网站建设资讯百度推广管理平台
  • wordpress建立论坛网站专门做网站建设的公司
  • 美食网站的建设目的搜狗推广登录入口
  • 怎么样自己建设网站[ 1500元做网站_验收满意再付款! ]_沛县网络公司
  • 代做设计网站网站分享代码怎么加
  • 站长工具seo综合wordpress能恢复数据库
  • 网站推广服务chuseo北京网站建设 app
  • 海南行指三亚网站开发最权威最有效的投诉平台
  • 网站开发设计步骤什么样的网站快速盈利
  • 衡阳seo优化seo推广官网
  • 清远网站seo新开最好的传奇网站
  • 可以做h5的网站湖北企业建站系统平台
  • 基层组织建设部 网站怎样用别人的网站做修改病句
  • vs2013做网站保存的格式如何评价网站是否做的好