数据库连接 *** 作的基本代码

数据库连接 *** 作的基本代码,第1张

下面是对sqlserver 2005的连接,用的是java语言

/

此类用于获得数据库连接对象以及关闭

@author student

/

public class DBConnection {

private static final String DRIVER_CLASS = "commicrosoftsqlserverjdbcSQLServerDriver";

private static final String DATABASE_URL = "jdbc:sqlserver://localhost:1035;databaseName=books";

private static final String DATABASE_USER = "sa";

private static final String DATABASE_PASSWORD = "123456";

/

获得一个数据连接对象

@return

/

public Connection getConn(){

Connection con = null;

try{

ClassforName(DRIVER_CLASS);

con = DriverManagergetConnection(DATABASE_URL,DATABASE_USER,DATABASE_PASSWORD);

}catch(ClassNotFoundException ex){

exprintStackTrace();

}catch(SQLException ex){

exprintStackTrace();

}

return con;

}

/

关闭数据库相关对象

/

public void closeConn(ResultSet rs,PreparedStatement ps,Connection con){

try{

if(rs!=null)

rsclose();

if(ps!=null)

psclose();

if(con!=null)

conclose();

}catch(SQLException ex){

exprintStackTrace();

}

}

}

下面是对sqlserver 2000的连接,用的是java语言

public class BaseJdbcDAO {

protected Connection conn=null;

protected Statement stmt=null;

protected PreparedStatement pstmt=null;

protected ResultSet rs=null;

protected void openConn(){

Connection aConn=null;

try {

ClassforName("commicrosoftjdbcsqlserverSQLServerDriver");

aConn=DriverManagergetConnection("jdbc:microsoft:sqlserver://localhost:1433;DataBaseName=epet","123","123");

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}catch (SQLException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

thisconn=aConn;

}

protected void closeAll(){

if(rs!=null){

try {

rsclose();

} catch (SQLException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

}

if(stmt!=null){

try {

stmtclose();

} catch (SQLException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

}

if(pstmt!=null){

try {

pstmtclose();

} catch (SQLException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

}

if(conn!=null){

try {

connclose();

} catch (SQLException e) {

// TODO Auto-generated catch block

eprintStackTrace();

}

}

}

}

建议你把所有的对数据库的 *** 作都写在sql server数据库存储过程中,然后通过C#代码 执行这些个存储过程,完成功能,这样做执行速度快,安全性高,这是最佳方案。

如果你非要用C#代码来做这些 *** 作,就把这些sql语句写在业务逻辑层中(若是winForm写在客户端后台代码里,若是webForm项目就写在页面后台代码里),然后执行sql语句,完成功能。

以下是C#连接数据库的代码:

public static SqlConnection CreateSqlConnection()

{

SqlConnection conn = new SqlConnection("server=;database=marsDB;uid=sa;pwd=;");

return conn;

}

public class DBoperate

{

SqlConnection con;

SqlCommand cmd;

public DBoperate()

{

try{

con = marsDBCreateSqlConnection();

conOpen();

cmd = new SqlCommand();

cmdConnection = con;

}catch

{

}

}

public void DBConRelease()

{

try

{

conClose();

}

catch

{

}

}

public DataSet CreateDs(string sqlCmdText,string dtName)

{

cmdCommandText = sqlCmdText;

SqlDataAdapter sda = new SqlDataAdapter(cmd);

DataSet ds = new DataSet();

sdaFill(ds, dtName);

return ds;

}

public bool UserQuery(string userAccount)

{

cmdCommandText = "select count() from TB_userInfo where userAccount ='"+userAccount+"'";

int count = ConvertToInt32(cmdExecuteScalar());

if (count > 0)

{

return true;

}

else

{

return false;

}

}

public bool AdminQuery(string adminAccount)

{

cmdCommandText = "select count() from TB_admin where adminAccount ='" + adminAccount + "'";

int count = ConvertToInt32(cmdExecuteScalar());

if (count > 0)

{

return true;

}

else

{

return false;

}

}

另外,站长团上有产品团购,便宜有保证

ASP光标

光标是:rsOpen SQL,CONN,A,B的值是A,B类型的记录锁定。

A:

0只读,当前数据记录只能向下移动

只读并且可以自由移动,在当前的数据记录

2可读写,当前数据记录可自由移动

3可以读取和写入数据记录可自由移动,你可以看到新的记录 BR />

B:

1预设的锁定类型的记录集是只读的,不能记录

2悲观锁定,数据提供者将试图记录锁定记录,以确保成功编辑记录。只要编辑一开始,现在锁定的记录。

3,更新记录时,记录被锁定,直到Update方法提交的乐观锁定。

------------------------

列出,这是一个用户定义的变量,或者调用一个实例的对象,该对象连接到数据库,下面的语句:

康恩=的ServerCreateObject(“数据库”)

您也可以使用其他的名称是不确定的只是人们习惯了对conn

create database 数据库名称

on

(

name='aaa',

filename='aaadbf',

size=初始大小,

maxsize=存储上限,

filegrowth=增长增量

)

log on

(

name='b',

filename='bldf',

size=初始大小,

maxsize=存储上限,

filegrowth=增长增量

)

扩展资料:

SQL语句创建基本数据库

SQL语句代码:CREATE DATABASE 语句。

CREATE DATABASE Epiphany

ON

(

NAME = Epiphany,

FILENAME = 'E:\SQL SERVER 2008\Epiphany_datamdf',

SIZE = 5MB,

MAXSIZE = 20,

FILEGROWTH = 20

)

LOG ON

(

NAME = Epiphany,

FILENAME = 'E:\SQL SERVER 2008\Epiphany_logldf',

SIZE = 2MB,

MAXSIZE = 10MB,

FILEGROWTH = 1MB

);

可以用这个模板,例子:

CREATE DATABASE Epiphany

ON

(

NAME = Epiphany,

FILENAME = 'E:\SQL SERVER 2008\Epiphany_datamdf',

SIZE = 5MB,

MAXSIZE = 20,

FILEGROWTH = 20

)

LOG ON

(

NAME = Epiphany,

FILENAME = 'E:\SQL SERVER 2008\Epiphany_logldf',

SIZE = 2MB,

MAXSIZE = 10MB,

FILEGROWTH = 1MB

);

完毕!

create database db

use db

create table 借阅等级信息(

借阅等级 int primary key,

最长借阅时间 int,

最大借阅数量 int,

)

insert into 借阅等级信息 values

(0, 30, 10),

(1, 60, 20),

(2, 90, 30),

(3, 120, 40)

create table 读者信息(

姓名 char(15) not null,

证件号 char(12) primary key,

借阅等级 int default 0,

累计借书 int default 0,

foreign key(借阅等级) references 借阅等级信息(借阅等级)

)

insert into 读者信息(姓名, 证件号, 借阅等级) values

('张三', '541607120165', 1),

('李四', '541707010185', 3),

('王五', '541707120165', 1),

('赵六', '541505980268', 2),

('孙七', '541407010169', 0),

('周八', '541307010489', 1)

create table 出版社信息(

出版社 varchar(20) primary key,

地址 varchar(25),

联系电话 char(7)

)

insert into 出版社信息 values

('清华大学出版社', '北京', '4979421'),

('晟威出版社', '天津', '5564130'),

('南海出版公司', '海南', '4984910'),

('上海文艺出版社', '上海', '6640239')

create table 图书信息(

索书号 char(15) primary key,

作者 char(15),

书名 char(15),

出版社 varchar(20),

出版时间 date,

foreign key(出版社)references 出版社信息(出版社)

)

insert into 图书信息 values

('b12987', '严蔚敏', '数据结构', '清华大学出版社', '2012-02-06'),

('b97894', '东野圭吾', '幻夜', '南海出版公司', '2004-08-02'),

('b16546', '吴玉华', '物理实验教程', '清华大学出版社', '2013-05-15'),

('b89490', '张雪峰', '考研指点', '晟威出版社', '2016-12-12'),

('b56400', '郏宗培', '纸上寻仙记', '上海文艺出版社', '2011-02-05')

create table 单本图书信息(

条码号 char(7) primary key check(len(条码号) = 7),

索书号 char(15),

馆藏地 varchar(40),

书刊状态 varchar(6) check(书刊状态 in ('可借', '借出', '非可借')),

历史借阅量 int default 0,

foreign key(索书号)references 图书信息(索书号)

)

insert into 单本图书信息(条码号, 索书号, 馆藏地, 书刊状态) values

('t987628', 'b97894', '三楼A8', '借出'),

('t594805', 'b97894', '二楼C7', '可借'),

('t984910', 'b89490', '五楼A2', '借出'),

('t940566', 'b12987', '负一楼D3', '借出')

create table 借阅信息(

借阅号 char(6) primary key,

借阅时间 date,

归还时间 date,

图书条码号 char(7),

借阅人证件号 char(12),

foreign key(图书条码号) references 单本图书信息(条码号),

foreign key(借阅人证件号) references 读者信息(证件号)

)

create table 评论信息(

评论号 char(8) primary key,

评分 numeric(2, 1),

内容 varchar(200),

评论时间 date,

评论者id char(12),

索书号 char(15),

foreign key(索书号)references 图书信息(索书号),

foreign key(评论者id)references 读者信息(证件号)

)

insert into 评论信息 values

('p12391', 89, '很有趣', '2015-06-24', '541707010185', 'b97894'),

('p98523', 78, '受益颇多', '2016-05-22', '541307010489', 'b89490'),

('p94606', 68, '完全看不懂orz', '2017-05-02', '541607120165', 'b12987')

create table 主题词信息(

ID char(8) primary key,

类别 char(15),

索书号 char(15),

foreign key(索书号)references 图书信息(索书号)

)

insert into 主题词信息 values

('z64400', '计算机', 'b12987'),

('z95410', '物理', 'b16546'),

('z98500', '考研', 'b89490'),

('z64165', '推理\悬疑', 'b97894'),

('z69850', '仙侠', 'b56400')

use db

go

create trigger trigger1

on 借阅信息

after insert

as

begin 

update 读者信息                                                 --更改读者累计借书量

set 累计借书 = 累计借书 + 1                                   

from 读者信息, inserted

where 读者信息证件号 = inserted借阅人证件号

update 单本图书信息                                             --更改图书状态

set 单本图书信息书刊状态 = '借出'

from inserted, 单本图书信息

where inserted图书条码号 = 单本图书信息条码号

update 单本图书信息

set 历史借阅量 = 历史借阅量 + 1                                 --更改图书历史借阅量

from inserted, 单本图书信息

where inserted图书条码号 = 单本图书信息条码号

end

insert into 借阅信息 values

('j13488', '2018-05-01', '2018-08-01', 't987628', '541407010169')

insert into 借阅信息 values

('j14910', '2016-12-11', '2017-01-25', 't984910', '541607120165')

insert into 借阅信息 values

('j97890', '2018-05-14', '2018-06-14', 't940566', '541607120165')

go

create view view_1(图书条码, 借阅者姓名, 编号, 借阅时间, 应还时间)

as

select 图书条码号, 姓名, 证件号, 借阅时间, 归还时间

from 借阅信息, 读者信息

where 借阅信息借阅人证件号 = 读者信息证件号 and 归还时间 > getdate()

go

create view view_2(图书条码, 历史总借阅量)

as

select 条码号, 历史借阅量

from 单本图书信息, 图书信息

where 单本图书信息索书号 = 图书信息索书号 and 书名 = '幻夜'

go

create view view_3(类别, 图书条码, 历史总借阅量)

as

select 类别, 条码号, 历史借阅量

from 单本图书信息, 图书信息, 主题词信息

where 主题词信息索书号 = 图书信息索书号 and 图书信息索书号 = 单本图书信息索书号 and 类别 = '考研'

go

create view view_4(读者编号, 条码, 图书名称, 应还日期)

as

select 借阅人证件号, 图书条码号, 书名, 归还时间

from 单本图书信息, 图书信息, 借阅信息

where 借阅信息图书条码号 = 单本图书信息条码号 and 单本图书信息索书号 = 图书信息索书号

and 归还时间 > getdate() and 借阅人证件号 = '541607120165'

go

create view view_5(读者编号, 图书条码, 图书名称, 借阅日期, 归还日期)

as

select 借阅人证件号, 图书条码号, 书名, 借阅时间, 归还时间

from 单本图书信息, 图书信息, 借阅信息

where 借阅信息图书条码号 = 单本图书信息条码号 and 单本图书信息索书号 = 图书信息索书号

and 借阅人证件号 = '541607120165'

go

create view view_6(读者编号, 图书名称, 评论时间, 评论内容)

as

select 评论者id, 书名, 评论时间, 内容

from 借阅信息, 单本图书信息, 评论信息, 图书信息

where 借阅信息图书条码号 = 单本图书信息条码号 and 单本图书信息索书号 = 评论信息索书号

and 评论信息索书号 = 图书信息索书号 and 评论者id = '541607120165'

go

create view view_7(出版社名称, 图书名称, 出版时间)

as

select top 100 percent 出版社信息出版社, 书名, 出版时间

from 出版社信息, 图书信息

where 出版社信息出版社 = 图书信息出版社

order by 出版时间 asc

--执行

select from view_1

select from view_2

select from view_3

select from view_4

select from view_5

select from view_6

select from view_7 order by 出版时间 asc

扩展资料:

数据库模型:

对象模型

层次模型(轻量级数据访问协议)

网状模型(大型数据储存)

关系模型

面向对象模型

半结构化模型

平面模型(表格模型,一般在形式上是一个二维数组。如表格模型数据Excel)

架构

数据库的架构可以大致区分为三个概括层次:内层、概念层和外层。

内层:最接近实际存储体,亦即有关数据的实际存储方式。

外层:最接近用户,即有关个别用户观看数据的方式。

概念层:介于两者之间的间接层。

数据库索引

主条目:数据库索引

数据索引的观念由来已久,像是一本书前面几页都有目录,目录也算是索引的一种,只是它的分类较广,例如车牌、身份z字号、条码等,都是一个索引的号码,当我们看到号码时,可以从号码中看出其中的端倪,若是要找的人、车或物品,也只要提供相关的号码,即可迅速查到正确的人事物。

另外,索引跟字段有着相应的关系,索引即是由字段而来,其中字段有所谓的关键字段(Key Field),该字段具有唯一性,即其值不可重复,且不可为"空值(null)"。

例如:在合并数据时,索引便是扮演欲附加字段数据之指向性用途的角色。故此索引为不可重复性且不可为空。

数据库 *** 作:事务

主条目:数据库事务

事务(transaction)是用户定义的一个数据库 *** 作序列,这些 *** 作要么全做,要么全不做,是一个不可分割的工作单位。

事务的并发性是指多个事务的并行 *** 作轮流交叉运行,事务的并发可能会访问和存储不正确的数据,破坏交易的隔离性和数据库的一致性。

网状数据模型的数据结构 网状模型 满足下面两个条件的基本层次联系的集合为网状模型。 1 允许一个以上的结点无双亲; 2 一个结点可以有多于一个的双亲。

参考资料来源:百度百科——数据库

创建数据库和表的 *** 作有两种方法:

一、可视化 *** 作

1创建数据库

选中数据库右击,在出现的对话框中选择新建数据库,然后新出现的对话框中填写数据库的名称

2创建数据表

选中数据库下的表右击,在出现的对话框最上方有新建表选项,新出现的对话框中有列名、数据类型、允许Null值三列,这里可以添加表的的列,添加好列后保存Ctrl+S或者点击上方的保存,填写表名称确定就创建好了。

二、使用SQL语句创建

1创建数据库

create database stuDB  --stuDB是数据库的名称

on  primary  -- 默认就属于primary文件组,可省略

(

/--数据文件的具体描述--/

    name='stuDB_data',  -- 主数据文件的逻辑名称

    filename='D:\stuDB_datamdf', -- 主数据文件的物理路径和名称

    size=5mb, --主数据文件的初始大小

    maxsize=100mb, -- 主数据文件增长的最大值

    filegrowth=15%--主数据文件的增长率

)

log on

(

/--日志文件的具体描述,各参数含义同上--/

    name='stuDB_log',

    filename='D:\stuDB_logldf',

    size=2mb,

    filegrowth=1mb

)

  

-----2创建数据表

use StuDB   --使用某个数据库(在某个数据库下建表)

go 

if exists(select  from sysobjects where name='stuMarks')--查询数据库是否已存在此表

drop table stuMarks--如果存在该表则删除,不存在不执行此句

create table stuMarks  --stuMarks是表的名称

(

    ExamNo      int     identity(1,1) primary key,--列名    数据类型   约束

    stuNo       char(6) not null,--列名   数据类型   是否允许插入Null值

    writtenExam int     not null,

    LabExam     int     not null

)

go

    

-- 其中,列属性"identity(起始值,递增量)" 表示"ExamNo"列为自动编号, 也称为标识列alter table 表名

add constraint 约束名 约束类型 具体的约束说明

alter table 表名

drop constraint 约束名

create database studb2

on primary --主数据文件

(

name=studb2, --逻辑文件名

filename='F:\studb2mdf', --物理文件名

size=10MB, --初始大小

maxsize=200MB, --最大大小

filegrowth=1MB --增长率

),

(

name=studb2_ndf, --逻辑文件名

filename='F:\studb2_ndfndf', --物理文件名

size=10MB, --初始大小

maxsize=200MB, --最大大小

filegrowth=1MB --增长率

)

Log on --日志文件

(

name=studb2_log, --逻辑文件名

filename='F:\studb2_logldf', --物理文件名

size=2MB, --初始大小

maxsize=10MB, --最大大小

filegrowth=10% --增长率

),

(

name=studb2_log4, --逻辑文件名

filename='F:\studb2_log2ldf', --物理文件名

size=2MB, --初始大小

maxsize=10MB, --最大大小

filegrowth=10% --增长率

),

(

name=studb2_log3, --逻辑文件名

filename='F:\studb2_log3ldf', --物理文件名

size=2MB, --初始大小

maxsize=10MB, --最大大小

filegrowth=10% --增长率

)

--删除数据库

drop database studb2

以上就是关于数据库连接 *** 作的基本代码全部的内容,包括:数据库连接 *** 作的基本代码、sql创建数据库代码、求一个数据库的代码(急求)。。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9289914.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存