搜档网
当前位置:搜档网 › 通过PHP操作SQL Server数据库

通过PHP操作SQL Server数据库

通过PHP操作SQL Server数据库
通过PHP操作SQL Server数据库

9.2 通过PHP操作SQL Server数据库

9.2.1 连接SQL Server数据库

虽然PHP+MySQL进行网络开发是最佳的选择,但是对于已经熟悉并掌握了S QL Server的读者来说,可能会使用SQL Server作为网站后台数据库,这时,就需要通过使用PHP来连接SQL Server数据库。

PHP同SQL Server数据库的连接步骤同MySQL基本类似,而且函数结构及声明也基本类似,如MySQL连接服务器的函数是mysql_connect(),而连接SQL S erver的函数是mssql_connect(),只要将mysql替换成mssql即可。

在默认情况下,是不能连接SQL Server数据库的。为了能够连接SQL Serv er数据库,必须修改php.ini文件的设置(在更改文件前需要去除该文件的只读属性),将“extension=php_mssql.dll”语句前面的分号删除,如图9.18所示,然后,重新启动Apache服务器。

mssql_connect()函数用于连接SQL Server服务器,该函数的语法如下:resource mssql_connect([string servername[,string username[,string password]]]);

其中,参数servername表示服务器名称;username表示用户名;password 表示密码。

例如,用户连接本机SQL Server服务器的代码如下:

$link=mssql_connect("localhost","sa","");

9.2.2 图书信息查询

PHP操纵SQL server数据库用到了MySQL函数库中的相关函数,下面对这些函数进行介绍。

1.mssql_connect()函数

该函数用于建立数据库的连接。语法如下:

resource mssql_connect(string [servername], string [username], string [password]); 2.mssql_select_db()函数

该函数用于选择数据库文件。语法如下:

resource mssql_select_db(string database_name, int [link_identifier]);

3.mssql_query()函数

该函数用于查询字符串。语法如下:

resource mssql_query(string query, int plink_identifier));

4.mssql_fetch_array()函数

该函数用于将查询结果result分割到数组变量中。语法如下:

resource array mssql_fetch_array(int result);

5.mssql_close()函数

该函数用于关闭与数据库的连接。语法如下:

boolean mssql_close(int [link_identifier]);

信息查询在动态网站开发过程中应用最为广泛。下面这个范例主要介绍PHP 与SQL Server进行数据库的操作。

范例09-10 图书信息查询范例位置:mr\fl\09\10

录像位置:mr\lx\09

本范例通过接收文本框传递的值赋值给session变量,来检索与之匹配的图书信息(支持模糊查询),单击【查询】按钮,即可将符合图书名称的图书信息显示在浏览器中,运行结果如图9.19所示。

图9.19 图书信息查询

本范例的实现过程如下。

(1)首先,利用包含文件命令include引用数据库配置文件“conn.php”,代码如下:

include "conn.php";

?>

在“conn.php”文件中,主要应用mssql_connect()函数和mssql_select_d b()函数建立数据源的连接,代码如下:

$conn=mssql_connect("localhost","sa","");

mssql_select_db("DB_Book",$conn);

?>

(2)创建记录集。首先,通过表单判断用户是否单击了【查询】按钮,然后,通过接收文本框传递的值赋值给session变量,再利用查询语句检索符合条件的数据信息。最后,利用if条件语句判断记录集是否为空,如果为空,输出提示信息“对不起,您检索的图书信息不存在!”,否则,利用Do…while循环语句将符合条件的信息输出到浏览器中,程序完整代码如下:

if ($_POST["Submit"]!=""){

session_start();

$_SESSION[txt_book]=$_POST[txt_book];

?>

$sql=mssql_query("select * from tab_book where bookname like '%$_SESSION[tx t_book]%'");

$info=mssql_fetch_array($sql);

if($info==False){

echo "对不起,您检索的图书信息不存在!";

}

else{

do{

?>

}

while($info=mssql_fetch_array($sql));

mssql_close(); //关闭数据库连接

}

}

?>

编号图书名称发行日期单价内容介绍作者出版社

9.2.3 图片分栏显示

在图片信息较多的页面中,将图片进行分栏显示可以使整个页面布局清晰,下面结合具体范例介绍图片分栏的技术。

范例09-11 图片分栏显示范例位置:mr\fl\09\11

录像位置:mr\lx\09

在开发信息资源网站时,对资源信息的显示方法有多种,如分页显示、跳转页码显示等,本范例主要介绍分栏显示信息的方法,运行结果如图9.20所示。

图9.20 图片分栏显示

首先建立数据库连接文件,该文件代码如下:

$conn=mssql_connect("localhost","sa",""); //连接数据库服务器

mssql_select_db("DB_mrbook",$conn); //选择数据库"DB_mrbook"

?>

下面开始具体实现商品的分栏显示:

include "conn/conn.php"; //包含数据库连接文件

?>

……

$sql=mssql_query("select * from tb_writer where writer_type='平面设计' order by wr iter_data asc",$conn);

//从数据库中查询图片信息

?>

……

$i=1; //用变量$i控制图片分栏

while($result=mssql_fetch_array($sql)) //通过循环遍历所有记录{

if ($i % 5==0) //如果$i能被5整除,则显示下一栏图片

{

?>

      " width="76" height="110" border="0">&nb sp;

}

else //否则显示本栏图片

{

?>

      " width="76" height="110" border ="0"> 

}

$i++; //显示一幅图片后使$i加1

}

?>

……

9.2.4 留言板

PHP操纵SQL Server,除了可以利用PHP自身的函数外,还可以利用ADO的方法操纵SQL Server数据库,下面将以留言板为例介绍PHP利用ADO的方法操纵SQL server数据库的实现过程。

范例09-12 留言板范例位置:mr\fl\09\12

录像位置:mr\lx\09

在开发网站程序设计时,有很多的网站里都设有留言板模块。该模块主要用于方便用户在网站内进行留言。留言板模块包括查看留言、签写留言、管理留言。运行本范例,用户单击“查看留言”超级链接,浏览留言信息,运行结果如图9. 21所示。

图9.21 留言板页面的运行结果

为了减少代码重用率,同样建立conn.php来连接SQL server数据库,代码如下:

$conn=new com("adodb.connection"); //创建数据库连接对象

$connstr="provider=sqloledb;data source=localhost;uid=sa;pwd=;database=guestbook "; //设置数据库连接驱动

$conn->open($connstr); //调用数据库连接对象的open()方法来执行驱动,从而与数据库建立连接

?>

上述代码中的data source的值为数据库服务器的名称,uid的值为某用户名,pwd的值为用户密码,database的值为某数据库名。有了conn.php为基础,就可以通过分页来显示所有留言信息了。代码如下:

include_once("top.php"); //包含首部导航栏

?>

……

include_once("conn.php"); //包含数据库连接文件

$rs=new com("adodb.recordset"); //建立记录集对象

$sql="select * from word order by shijian desc";

$rs->open($sql,$conn,3,1); //执行查询

if($rs->eof || $rs->bof) //如果记录集指针的位置在第一行以前或在最后一行以后,此时说明记录集中无内容

{

?>

暂无留言

}

else

{

if($_GET[page]=="" || is_numeric($_GET[page]==false))

{

$page=1; //获取查询字符串的值,为下面翻页所用

}

else

{

$page=intval($_GET[page]);

}

$rs->pagesize=5; //设置每页显示5条留言

$rs->absolutepage=$page; //设置当前显示第几页

$mypagesize=$rs->pagesize; //用$mypagesize来控制每页循环显示

while(!$rs->eof && $mypagesize>0)

{

?>

……

本站共有留言recordcount;?>条 每页显示 pagesize;?>条 第页/共pagecount;?>

if($page>=2) //下面代码用于实现翻页显示

{

?>

9

7

}

if($rs->pagecount<=4)

{

for($i=1;$i<=$rs->pagecount;$i++)

{

?>

}

}

else

{

for($i=1;$i<=4;$i++)

{

?>

}

?>

8

nt face="webdings"> :

}

?>

include_once("bottom.php");

通过以上代码,用户可以掌握PHP利用ADO的方式操纵SQL Server数据库的实现方法,该留言板的其他功能及详细代码请参看本书附带光盘。

SQLserver数据库课程设计范例

1 概述 1.1课题简介 书店书目书种繁多,来源多样,购买者众多,图书信息、供应商信息、客户信息、销售信息庞大,不易管理。因此,很有必要创建一个小型书店管理系统,以便于书店对图书的管理。1.2设计目的 应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。 数据库应用课程实践:实践和巩固在课堂教学中学习有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。 数据库原理软件设计实践:实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。 1.3设计内容 运用基于E-R 模型的数据库设计方法和关系规范化理论做指导完成从系统的分析到设计直至系统的最终实现,开发小型书店管理系统,完成小型书店管理系统的全部功能。 首先做好需求分析,并完成数据流图和数据字典。 其次做概念分析,利用实体联系的方法将需求分析的用户需求抽象为信息结构,得到E-R 图。然后就是逻辑结构设计,将E-R 图转换为计算机系统所支持的逻辑模型 2 需求分析 2.1功能分析 首先,建立一些基本表(尽可能满足3N),对大部分基本信息组合、存储;其次通过建立视图实现对冗余数据的有必要保留(查询并计算基本表属性得到新的作为视图属性)并实现对以下基本信息的显示。 图书信息:图书名称、订购数量、订购时间、订购单价、金额、出版社名称、作者名称;供应商名称等; 供应商信息:供应商名称、地址、电话,联系人; 客户信息:客户编号、名称、年龄、性别、累计购书金额等; 销售信息:时间、销售名称、数量、销售单价、客户编号、客户名称、金额等。 在此基础上进行以下目标查询,由于有些查询常用且较复杂,为了简化其应用,所以将它们定义

SQLServer(多语句表值函数代码)

SQLServer(多语句表值函数代码) 代码如下: set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go CREATE FUNCTION [dbo].[ufnGetContactInformation](@ContactID int) RETURNS @retContactInformation TABLE ( -- Columns returned by the function [ContactID] int PRIMARY KEY NOT NULL, [FirstName] [nvarchar](50) NULL, [LastName] [nvarchar](50) NULL, [JobTitle] [nvarchar](50) NULL, [ContactType] [nvarchar](50) NULL ) AS -- Returns the first name, last name, job title and contact type for the specified contact. BEGIN

DECLARE @FirstName [nvarchar](50), @LastName [nvarchar](50), @JobTitle [nvarchar](50), @ContactType [nvarchar](50); -- Get common contact information SELECT @ContactID = ContactID, @FirstName = FirstName, @LastName = LastName FROM [Person].[Contact] WHERE [ContactID] = @ContactID; SET @JobTitle = CASE -- Check for employee WHEN EXISTS(SELECT * FROM [HumanResources].[Employee] e WHERE e.[ContactID] = @ContactID) THEN (SELECT [Title] FROM [HumanResources].[Employee] WHERE [ContactID] = @ContactID) -- Check for vendor

SQLSERVER操作命令

SQLSERVER数据库操作 ******操作前,请确定SQL的服务已经开启******** 一:登录进入sql数据库 1、开始---所有程序---Microsoft SQL Server 2005---SQL Server Management Studio Express 2、此时出现“连接到服务器”的对话框, “服务器名称”设置为SQL数据库所在机器的IP地址 “身份验证”设置为SQL Server身份验证或者Windows 身份验证 填写登录名和密码后,点击“连接”按钮,即可进入到SQL数据库操作界面。 二:新建数据库 登录进去后,右击“数据库”,选择—“新建数据库” 设置数据库名称,在下面的选项卡中还可以设置数据库的初始大小,自动增长,路径。 点击确定,一个数据库就建好了。 三:如何备份的数据库文件。 登录进入后,右击相应的需要备份数据库----选择“任务” 目标下的备份到,点击“添加”按钮可以设置备份数据库保存的路径。 四:如何还原备份的数据库文件。(以本地机器为例子) 1、设置服务器名称,点击右边的下拉框的三角,选择“浏览更多…”。 此时出现查找服务器对话框,选择“本地服务器”---点开“数据库引擎”前面 的三角---选中出现的服务器名称—确定。 (注:可以在“网络服务器”选项卡中设置网络服务器) 2、设置身份验证,选择为“windows身份验证” 3、点击连接按钮,进入数据库管理页面 4、右击“数据库”,选择“还原数据库”,出现还原数据库的对话框 还原的目标----目标数据库,这里设置数据库的名字 还原的源----选择“源设备”,在弹出的对话框中点击“添加”按钮,找到所备 份的数据库文件,确定。 5、此时,在还原数据库对话框中会出现所还原的数据库的信息。在前面选中所需还 原的数据库。确定。 6、为刚刚还原的数据库设置相应的用户。 a点开“安全性”---右击“登录名”---新建登录名 b 设置登录名(假如为admin),并设置为SQL Server身份验证,输入密码,去除 “强制实施密码策略”前的勾。 C 找到导入的数据库,右击此数据库----选择“属性”,在选择页中,点击“文件” 设置所有者,点击右边的按钮,选择“浏览”,找到相应的用户(如admin)。确 定。。 7、此时重新以admin的身份进入,就可操作相应的数据库。

Sqlserver2005数据库练习题(1)

Sqlserver2005数据库练习题 第1章数据库技术基础 1.简述数据库、数据库管理系统、数据库系统的含义? 2.简述数据库、数据库管理系统、数据库系统之间的联系? 3.简单描述层次模型、网状模型、关系模型的含义? 4.简述一个学生都包含哪些属性? 5.对于一个学生表来说学生姓名是否可以作为主键,为什么? 6.描述你所在的班级都有哪些实体? 第2章安装Sql Server 2005与服务器管理 1.安装sqlserver 2005需要计算机的最低配置是什么? 2.x86操作系统是什么概念? 3.x64操作系统是什么概念? 4.安装数据库时应该选择什么样的操作系统? 5.开始安装时需要有哪些准备工作? 6.开始安装界面中的其他信息是什么意思? 7.用户许可协议必须为接受么? 8.用户许可协议是否可以打印? 9.系统配置界面中需要检查哪些项? 10.详细信息中哪些项要求必须安装成功才能进行下一步的操作? https://www.sodocs.net/doc/c112481089.html,+目录指的是什么? 12.iis功能要求指的是什么? 13.mdac版本的最低要求是什么? 14.实例名中的默认实例是什么含义? 15.实例名中的命名实例是什么含义? 16.服务器名指的是什么? 17.服务帐户中使用内置系统帐户是什么含义? 18.服务帐户中使用域帐户是什么含义? 19.安装结束时启动服务包括什么? 20.sqlserver2005提供的服务有哪些? 21.安装结束后,哪些服务要求必须启动? 22.ms sqlserver是什么服务? 23.sql server agent是什么服务? 24.sql server analysis services是什么服务? 25.sql server browser是什么服务? 26.如何对服务进行启动、暂停和停止操作? 27.启动数据库时需要做什么工作? 28.如何注册数据库? 29.如何删除注册的服务? 30.如何更改数据库的登陆模式?

SQLSERVER数据库、表的创建及SQL语句命令

SQLSERVER数据库、表的创建及SQL语句命令 SQLSERVER数据库,安装、备份、还原等问题: 一、存在已安装了sql server 2000,或2005等数据库,再次安装2008,会出现的问题 1、卸载原来的sql server 2000、2005,然后再安装sql server 2008,否则经常sql server服务启动不了 2、sql server服务启动失败,解决方法: 进入sql server configure manager,点开Sql server 网络配置(非sql native client 配置),点sqlzhh(我sqlserver 的名字)协议,将VIA协议禁用。再启动Sql Server服务,成功 如图: 二、在第一次安装SQLSERVER2008结束后,查看安装过程明细,描述中有较多项插件或程度,显示安装失败。 解决方法:

1、重新启动安装程度setup.exe,选择进行修复安装,至完成即可。 三、先创建数据库XXX,再进行还原数据库时,选择好备份文件XXX.bak,确定后进行还原,会报如下图的错误。 解决方法: 选择好备份数据库文件后,再进入“选项”中,勾选“覆盖现在数据库”即可。

四、查看数据库版本的命令:select @@version 在数据库中,点击“新建查询”,然后输入命令,执行结果如下 五、数据库定义及操作命令: 按照数据结构来组织、存储和管理数据的仓库。由表、关系以及操作对象组成,把数据存放在数据表中。 1、修改数据库密码的命令: EXEC sp_password NULL, '你的新密码', 'sa' sp_password Null,'sa','sa'

SQLSERVER函数大全

SQL SERVER函数大全 SQL SERVER命令大全 SQLServer和Oracle的常用函数对比 1.绝对值 S:select abs(-1) value O:select abs(-1) value from dual 2.取整(大) S:select ceiling(-1.001) value O:select ceil(-1.001) value from dual 3.取整(小) S:select floor(-1.001) value O:select floor(-1.001) value from dual 4.取整(截取) S:select cast(-1.002 as int) value O:select trunc(-1.002) value from dual 5.四舍五入 S:select round(1.23456,4) value 1.23460 O:select round(1.23456,4) value from dual 1.2346 6.e为底的幂 S:select Exp(1) value 2.7182818284590451 O:select Exp(1) value from dual 2.71828182 7.取e为底的对数 S:select log(2.7182818284590451) value 1 O:select ln(2.7182818284590451) value from dual; 1 8.取10为底对数 S:select log10(10) value 1 O:select log(10,10) value from dual; 1 9.取平方 S:select SQUARE(4) value 16 O:select power(4,2) value from dual 16

sqlserver函数大全

在SQL Server在线图书或者在线帮助系统中,函数的可选参数用方括号表示。在下列的CONVERT()函数例子中,数据类型的length和style参数是可选的: CONVERT (data-type [(length)], expression[,style]) 可将它简化为如下形式,因为现在不讨论如何使用数据类型: CONVERT(date_type, expression[,style]) 根据上面的定义,CONVERT()函数可接受2个或3个参数。因此,下列两个例子都是正确的: SELECT CONVERT(Varchar(20),GETDATE()) SELECT CONVERT(Varchar(20),GETDATE(), 101) 这个函数的第一个参数是数据类型Varchar(20),第2个参数是另一个函数GETDATE()。GETDATE()函数用datetime数据类型将返回当前的系统日期和时间。第2条语句中的第3个参数决定了日期的样式。这个例子中的101指以mm/dd/yyyy格式返回日期。本章后面将详细介绍GETDATE()函数。即使函数不带参数或者不需要参数,调用这个函数时也需要写上一对括号,例如GETDATE()函数。注意在书中使用函数名引用函数时,一定要包含括号,因为这是一种标准形式。 确定性函数 由于数据库引擎的内部工作机制,SQL Server必须根据所谓的确定性,将函数分成两个不同的组。这不是一种新时代的信仰,只和能否根据其输入参数或执行对函数输出结果进行预测有关。如果函数的输出只与输入参数的值相关,而与其他外部因素无关,这个函数就是确定性函数。如果函数的输出基于环境条件,或者产生随机或者依赖结果的算法,这个函数就是非确定性的。例如,GETDATE()函数是非确定性函数,因为它不会两次返回相同的值。为什么要把看起来简单的事弄得如此复杂呢?主要原因是非确定性函数与全局变量不能在一些数据库编程对象中使用(如用户自定义函数)。部分原因是SQL Server缓存与预编译可执行对象的方式。例如,即席查询可以使用任何函数,不过如果打算构建先进的、可重用的编程对象,理解这种区别很重要。 以下这些函数是确定性的: ●?AVG()(所有的聚合函数都是确定性的) ●?CAST() ●?CONVERT() ●?DATEADD() ●?DATEDIFF() ●?ASCII() ●?CHAR() ●?SUBSTRING() 以下这些函数与变量是非确定性的: ●?GETDATE()

sqlserver创建数据库说明

请按以下步骤操作。 1、点击windows的开始菜单找到sql server 的企业管理器,如(图1)。 (图1) 2、点击后出现(图2) (图2)

3、展开Microsoft Sql Servers 项->Sql Server组->你的机器名字(windows NT),如(图3) (图3) 4、在选中的项中点击鼠标右键,如(图4) (图4)

5、点击选择属性菜单后弹出(图5) (图5) 6、请选择安全性页面,在身份验证中选择sql server 和windows 。(可能有的版本不只两个 选择,一定要保证选中sql server身份验证。)选中后请点击确定按钮。如(图6) (图6)

7、回到企业管理器选择数据库项,在右边空白处点击鼠标右键。如(图7) (图7) 8、选择新建数据库菜单,在弹出的窗口中填入kkx_database,如(图8) (图8)

9、选择数据文件页面,将文件名改为kkx_data(你可以更改文件所在的路径),初始大小改 为500。如(图9) (图9) 10、选择事务日志页面,将文件名改为kkx_log(你可以更改文件所在的路径),初始大 小改为100。如(图10) (图10)

11、在上图中点击确定按钮。(根据你的机器性能你需要等待1-10分钟) 12、回到企业管理器选择安全性->登录,在右边空白处点击鼠标右键,如图11 (图11) 13、点击新建登录菜单,在弹出的窗口中更改内容如下 名称:kkx_sa 身份验证:sql server身份验证,注意密码必须是kkx_password 默认设置中的数据库:kkx_database。如(图12) (图12)

实验1SQLServer数据库基本操作

实验1 SQL Server数据库基本操作 一、实验目的 本实验主要了解Microsoft SQL Server 2012中各组件的主要功能和基本使用方法;了解SQL Server数据库的逻辑结构和物理结构;了解数据表的结构特点以及索引的基本概念。通过本实验,读者将学会在“企业管理器”中创建和修改数据库和数据表结构、对数据表进行数据的添加、删除和更新操作以及在数据表上创建字段索引的操作。 二、实验环境 Microsoft SQL Server 2012 SSMS 三、实验内容 1. 创建一个名称为Book的数据库,支持教材订购信息管理,要求: (1)将主数据库文件Book_放置在的D:\DBF文件夹中,文件大小为5MB,最大值为50MB,文件增量为2MB。 (2)将事务日志文件Book_放置在的D:\DBF文件夹中,文件大小为5MB,最大值为100MB,文件增量为1MB。 【实验步骤】 1)在D:\下创建DBF文件夹。 2)在SSMS中的对象资源管理器窗口右单击“数据库”,从快捷菜单中选择“新建数据库”命令,出现“数据库属性”对话框。 3)在“数据库属性”对话框中选择“常规”选项卡,在名称文本框中输入:Book; 4)在“数据库属性”对话框中选择“数据文件”选项卡,设置数据文件的位置、大小、

最大值和文件增量等属性; 5)在“数据库属性”对话框中选择“事务日志”选项卡,设置事务日志文件的位置、大小、最大值和文件增量等属性。 6)点击“确定”按钮,建立“Book”数据库,如下图所示: 2. 在上题所建数据库Book中建立5张数据表结构。 字段名称字段说明类型定义属性限定索引外键AcadCode 学院代码Char(2) Primary Key √ AcadName 学院名称Varchar (50) Not Null

sqlserver数据库快速入门

--建数据库 create database school --建表 use school create table students ( s_id int identity(1,1) primary key,--设主键,为自增id s_name varchar(20) not null, s_classId int ) create table class ( c_id int identity(1,1) primary key,--设主键,为自增id c_className varchar(20) not null ) create table student_Score ( ss_id int identity(1,1) primary key,--设主键,为自增id ss_score varchar(200) not null, s_id int ) --设外键 use school alter table students add constraint FK_class_studets foreign key(s_classId)references class(c_id) --设外键 use school alter table student_Score add constraint FK_students_student_Score foreign key(s_id)references students(s_id) --插class数据 insert into class(c_className) values('08ACCP1班') insert into class(c_className) values('08ACCP2班') insert into class(c_className) values('08ACCP3班') insert into class(c_className) values('08ACCP4班') insert into class(c_className) values('08网编1班') insert into class(c_className) values('08网编2班') insert into class(c_className) values('08软开1班') insert into class(c_className) values('08软开2班') insert into class(c_className) values('08软开3班') insert into class(c_className) values('08信管1班') --插studets数据 insert into students(s_name,s_classId) values('陈志锦',2) insert into students(s_name,s_classId) values('何金喜',4) insert into students(s_name,s_classId) values('黄瑞驰',5)

易语言操作SQLServer数据库全过程

易语言操作SQL Server 数据库全过程 最近看到很多初学者在问在易语言中如何操作SQL Serve以外部数据库,也有人提出想要个全面的操作过程,为了让大家能够尽快上手,我给大家简单介绍一下操作SQL的过程,希望能起到抛砖引玉的作用。 由于我本身工作业比较忙,就以我目前做的一个软件的部份内容列给大家简单讲讲吧,高手就不要笑话了,只是针对初学者 第步,首先需要建立一个数据库: 以建立一个员工表为例,各字段如下 3 员工ID int 4 0 0 登陆帐号nvarchar 30 1 0 密码nvarchar 15 1 0 所属部门nvarchar 30 1 0 姓名nvarchar 10 1 0 性别nvarchar 2 1 0 年龄nvarchar 10 1 0 当前职务nvarchar 10 1 0 级别nvarchar 10 1 0 出生日期nvarchar 40 1 0 专业nvarchar 10 1 0 学历nvarchar 8 1 0 婚姻状况nvarchar 4 1 0 身份证号nvarchar 17 1 0 籍贯nvarchar 50 1 0 毕业院校nvarchar 50 1 0 兴趣爱好nvarchar 600 1 0 电话nvarchar 11 1 0 家庭成员nvarchar 20 1 0 工作经历nvarchar 600 1 0 销售行业经验nvarchar 600 1 0 离职原因nvarchar 600 1 0 升迁记录nvarchar 600 1 0 调岗记录 打+ -rd nvarchar 600 1 0 特殊贡献nvarchar 600 1 0 奖励记录nvarchar 600 1 0 处罚记录nvarchar 600 1 0 同事关系nvarchar 4 1 0 企业忠诚度nvarchar 4 1 0 入司日期nvarchar 30 1 0 在职状态nvarchar 4 1 0 上级评语nvarchar 600 1 0 最后登陆时间nvarchar 20 1 0 登陆次数nvarchar 50 1 0 照片image 16 1 一般我习惯用nvarchar,因为这是可变长的的非Unicode数据,最大长度为8000个字符,您可以根

C#与sqlserver数据库操作_附实例说明及sql语句大全

C#数据库连接操作大全+sql语句大全 下面是c#与数据库的连接及增删改除的各种操作,全部经过上机验证。学习软件的过程中,数据库起着至关重要的作用。软件行业里面有句老话,不会数据库就没有入门。软件思想可以慢慢培养,但是数据库的链接是一定要学会的。增删改查各种都不能少。 创建数据库 创建之前判断该数据库是否存在if exists (select * from sysdatabases where name='databaseName') drop database 'databaseName' go Create DATABASE database-name 删除数据库 drop database dbname 备份sql server --- 创建备份数据的device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表:A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition only 删除新表 drop table tabname 增加一个列 Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 添加主键 Alter table tabname add primary key(col) 说明:删除主键:Alter table tabname drop primary key(col) 创建索引 create [unique] index idxname on tabname(col….) 删除索引:drop index idxname on tabname 注:索引是不可更改的,想更改必须删除重新建。 创建视图 create view viewname as select statement 删除视图:drop view viewname 几个简单的基本的sql语句 选择:select * from table1 where 范围插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围更新:update table1 set field1=value1 where 范围查找:select * from table1 where field1 like ?%value1%? (所有包含…value1?这个模式的字符串)---like的语法很精妙,查资料! 排序:select * from table1 order by field1,field2 [desc] 总数:select count(*) as totalcount from table1 求和:select sum(field1) as sumvalue from

SQLServer-数据库—创建建表查询语句

SQL Server 2008数据库—创建、建表、查询语句 一、创建数据库 1、利用对象资源管理器创建用户数据库: (1)选择“开始”—“程序”—Microsoft SQL Server 2008—SQL Server Management Studio命令,打开SQL Server Management Studio。 (2)使用“Windows身份验证”连接到SQL Server 2008数据库实例。 (3)展开SQL Server 实例,右击“数据库”,然后人弹出的快捷菜单中选择“新建数据库存”命令,打开“新建数据库”对话框。 (4)在“新建数据库”对话框中,可以定义数据库的名称、数据库的所有者、是否使用全文索引、数据文件和日志文件的逻辑名称和路径、文件组、初始大小和增长方式等。输入数据库名称student。 2、利用T-SQL语句创建用户数据库: 在SQL Server Management Studio中,单击标准工具栏的“新建查询”按钮,启动SQL编辑器窗口,在光标处输入T-SQL语句,单击“执行”按钮。SQL编辑器就提交用户输入的T-SQL语句,然后发送到服务器执行,并返回执行结果。 创建数据库student的T-SQL语句如下: Create data base student On primary ( name=student_data, filename='E:\SQL Server2008 SQLFULL_CHS\student_data.mdf', size=3, maxsize=unlimited, filegrowth=1 ) Log on (name=student_log, filename='E:\SQL Server2008 SQLFULL_CHS\student_log.ldf', size=1, maxsize=20, filegrowth=10% ) 二、创建数据表 1、利用表设计器创建数据表: (1)启动SQL Server Management Studio,连接到SQL Server 2008数据库实例。

SqlServer教程:经典SQL语句集锦

SqlServer教程:经典SQL语句集锦 SQL分类:DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句:1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:/mssql7backup/MyNwind_1.dat' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表:A: create table tab_new like tab_old (使用旧表创建新表) B: create table tab_new as select col1,col2… from tab_old definition only 5、说明:删除新表 drop table tabname 6、说明:增加一个列 Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。7、说明:添加主键: [html]view plaincopyprint? 1. Alter table tabname add primary key(col) 说明:删除主键: Alter table tabname drop primary key(col) 8、说明:创建索引:

一个比较标准的sqlserver建表格式

一个比较标准的sqlserver建表格式 CREATE TABLE [dbo].[admin]( [id] [int] IDENTITY(1,1) NOT NULL, [usersname] [nvarchar](50) NULL, [password] [nvarchar](50) NULL, [groud] [int] NULL CONSTRAINT [DF_admin_groud] DEFAULT ((0)), [data] [datetime] NULL CONSTRAINT [DF_admin_data] DEFAULT (getdate()), CONSTRAINT [PK_admin] PRIMARY KEY CLUSTERED ( [id] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] 解释: CONSTRAINT [PK_admin] PRIMARY KEY CLUSTERED ( [id] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] 这是在id列上创建一个唯一聚集索引的语句。 primary key表明创建的是主键约束,culstered表示索引类型是聚集索引,IGNORE_DUP_KEY = OFF的作用是在向表中插入数据的时候,如果遇到表中已经存在id的值,insert语句就会失败,并且回滚整个insert语句。 ON [PRIMARY]表示是索引创建在主文件组上。 [pk_ admin] 是主键的名称。 需要注意的是sqlserver2000不支持WITH (IGNORE_DUP_KEY = OFF) 再看一个,和上面的有一点不一样: CREATE TABLE [dbo].[news]( [id] [int] IDENTITY(1,1) NOT NULL, [title] [nvarchar](100) NULL, [classid] int NULL, boardid int NULL, [contents] [ntext] NULL, [oSource] [nvarchar](50) NULL, [oAuthor] [nvarchar](50) NULL, [picurl] [nvarchar](100) NULL, [keytxt] [nvarchar](50) NULL, [data] [datetime] NULL CONSTRAINT [DF_news_data] DEFAULT (getdate()), [hklick] [int] NULL CONSTRAINT [DF_news_hklick] DEFAULT ((0)), [pinglun] [int] NULL CONSTRAINT [DF_news_pinglun] DEFAULT ((0)),

SQLServer基本语句汇总

序号功能语句 1创建数据库(创建之前判断该数据库是否存在)if exists (select * from sysdatabases where name='databaseName') drop database databaseName go Create DATABASE databasename 2删除数据库drop database databasename 3备份数据库USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat' BACKUP DATABASE pubs TO testBack 4创建新表create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 5根据已有表创建新表1、use 原数据库名 go select * into 目的数据库名.dbo.目的表名 from 原表名(使用旧表创建新表)2、create table tab_new as select col1,col2… from tab_old definition only 6创建序列create sequence SIMON_SEQUENCE minvalue 1 -- 最小值 maxvalue 999999999999999999999999999 -- 最大值start with 1 -- 开始值 increment by 1 -- 每次加几 cache 20; 7删除新表drop table tabname 8增加一个列Alter table tabname add colname coltype alter table tablename add column_b int identity(1,1) 9删除一个列Alter table tabname drop column colname 10修改一个列ALTER TABLE 表名 ALTER COLUMN 字段名 varchar(30) NOT NULL DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 11添加主键Alter table tabname add primary key(col) 12删除主键Alter table tabname drop primary key(col) 13创建索引create [unique] index idxname on tabname(col…。)14删除索引drop index idxname on tabname 15创建视图create view viewname as select statement 16删除视图drop view viewname 17选择数据记录sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]" sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]" sql="select top 10 * from 数据表 where 字段名=字段值 order by 字段名 [desc]" sql="select top 10 * from 数据表 order by 字段名 [desc]" sql="select * from 数据表 where 字段名 in ('值1','值2','值3')" sql="select * from 数据表 where 字段名 between 值1 and 值2" 注:like中"%"匹配0个或多个字符;like中"_"匹配一个字符 18更新数据记录sql="update 数据表 set 字段名=字段值 where 条件表达式" sql="update 数据表 set 字段1=值1,字段2=值2 ……字段n=值n where 条件表达式" 19删除数据记录sql="delete from 数据表 where 条件表达式" sql="delete from 数据表" (将数据表所有记录删除) 20添加数据记录sql="insert into 数据表 (字段1,字段2,字段3 …) values (值1,值2,值3 …)" sql="insert into 目标数据表 select * from 源数据表" (把源数据表的记录添加到目标数据表) 21数据记录统计函数AVG(字段名) 得出一个表格栏平均值 COUNT(*;字段名) 对数据行数的统计或对某一栏有值的数据行数统计MAX(字段名) 取得一个表格栏最大的值 MIN(字段名) 取得一个表格栏最小的值 SUM(字段名) 把数据栏的值相加 引用以上函数的方法: sql="select sum(字段名) as 别名 from 数据表 where 条件表达式"set rs=conn.excute(sql) 用 rs("别名") 获取统计的值,其它函数运用同上。 22查询去除重复值select distinct * from table1 23查询数据库中含有同一这字段的表select name from sysobjects where xtype = 'u' and id in(select id from syscolumns where name = 's3') 24只复制表结构select * into a from b where 1<>1 select top 0 * into b from a 25复制内容set identity_insert aa ON insert into aa(Customer_ID, ID_Type, ID_Number) select Customer_ID, ID_Type, ID_Number from TCustomer; set identity_insert aa OFF 26UNION 运算符(使用运算词的几个查询结果行必须是一致的)UNION 运算符通过组合其他两个结果表(例如TABLE1 和TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随UNION 一起使用时(即UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自TABLE1 就是来自TABLE2。 27EXCEPT 运算符EXCEPT 运算符通过包括所有在TABLE1 中但不在TABLE2 中的行并消除所有重复行而派生出一个结果表。当ALL 随EXCEPT 一起使用时(EXCEPT ALL),不消除重复行。 SQL Server语句 1/3

在SQLserver2005中创建与管理数据库

实验报告 实验题目:实验2 在SQLserver2005 中创建与管理数据库 实验地点:一教8机房 指导教师:倪宁 学生班级:软件1111 学生学号:00124 姓名:崔章 实验时间: 2012年3月18

一、实验目的 (1)熟习SQL server2005管理向导的使用(启动与退出)。 (2)熟习SQL server2005管理向导的界面 (3)熟习SQL server2005配置管理器(启动与关闭服务) (4) 会进行注册SQL Server服务器。 (5) 会行进简单的查询分析器的操作。 (6) 掌握SQL server2005的启动与退出方法 (7) 了解SQ LServer数据库的逻辑结构和物理结构。 (8) 熟练使用SSMS进行数据库创建与管理。 二、实验设备及环境 1. 奔腾计算机2.WINXP 3.SQL server2005 三、实验内容 在SQL Server Management Studio 中创建数据库和在数据库中完成简单的增加、修改、删除、查看、备份、还原等操作。 四、实验过程概述 1、打开“SQL Server Management Studio”窗口,在“对象资源管理器”中展开服务器,鼠标右键单击“数据库”节点。 2、单击“新建数据库”命令。 3、在数据库名称中输入数据库名。 五、实验结果及分析 (1) 写出创建注册的步骤(用文字描述) 1、打开“SQL Server Management Studio”窗口,在“对象资

源管理器”中展开服务器,鼠标右键单击“数据库”节点。 2、单击“新建数据库”命令。 3、在数据库名称中输入数据库名。 (2) 写出查询分析器的使用方法。 1、打开“SQL Server Management Studio”窗口,在“对象资源管理器”中展开服务器,鼠标右键单击“数据库”节点。 2、鼠标右键单击目标数据库,在弹出的快捷键当中选择“属性’命令。 3、在该对话框的“常规”选项卡里,可看到该数据库的基本信息,如数据库备份信息数据库的名称、状态、所属者,创建数据库的时间、大小等。 4、单机“确定”按钮,完成。 (3) 写出进行本次实验的总结。 本次试验让我们对SQL server 2005 的掌握程度大大提高,教会了我们怎样创建一个数据库和怎样修改数据库里的内容。 (4) 写出数据库的分离及附加方法(简述),操作过程应注意哪些问题? 答:在“状态”列显示“未就绪”时分离数据库操作会失败。终止完进程后,单击“活动监视器”对话框里的“关闭”按钮,返回到“分离数据库”对话框,再单击“取消”返回“SQL Server Management Studio”窗口。 (5)按题目的顺序将各题的截图放入word 报告中。要在所截图的

相关主题