linq to sql 中从dbml文件中创建数据库
今天很郁闷,实验室的服务器东西都没有了,而我的数据库又在哪里,我又没有备份,把我抑郁的要命,幸亏我用的linq to sql.仔细想想,他的dbml文件基本包含了数据库的所有内容,所以,一定有办法从dbml文件中创建数据库!
研究了一段时间,终于让我重建起了数据库,虽然数据丢了,但那都是测试数据,基本没有什么用.呵呵现在把它们分享给大家,另外说一声,千万不要忘了备份数据库啊~~血的教训啊! 观察IDE自动生成的designer.cs文件,查看文件的结构如下:
[Table(Name="dbo.tb_borrow")]
public partial class tb_borrow : INotifyPropertyChanging, INotifyPropertyChanged
{
private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
private System.Nullable<int> _bookId;
private System.Nullable<int> _userId;
[Column(Storage="_bookId", DbType="Int")]
public System.Nullable<int> bookId
{
get
{
return this._bookId;
}
set
{
if ((this._bookId != value))
{
this.OnbookIdChanging(value);
this.SendPropertyChanging();
this._bookId = value;
this.SendPropertyChanged("bookId");
this.OnbookIdChanged();
}
}
}
[Column(Storage="_userId", DbType="Int")]
public System.Nullable<int> userId
{
get
{
return this._userId;
}
set
{
if ((this._userId != value))
{
this.OnuserIdChanging(value);
this.SendPropertyChanging();
this._userId = value;
this.SendPropertyChanged("userId");
this.OnuserIdChanged();
}
}
}
}
(为节省篇幅这里只列出几个属性)
可以发现,每个类都是由Table属性修饰的,而每个属性都是由Culumn修饰的,而实际上该属性对应的是ColumnAttribute类,该类包含了其所对应字段的字段名以及在数据库中的字段类型,欧拉,这就得了.我们创建数据库和数据表用的就是它啦.
接下来只要我们编写以下方法变可以轻松实现数据表的还原:
private void reverseDataTable()
{//在数据库中新建数据表
string
相关文档:
应一个朋友的要求,贴上收藏的SQL常用分页的办法~~
表中主键必须为标识列,[ID] int IDENTITY (1,1)
1.分页方案一:(利用Not In和SELECT TOP分页)
语句形式:
SELECT TOP 页记录数量 *
from 表名
WHERE (ID NOT IN
(SELECT TOP (每页行数*(页数-1)) ID
from 表名
ORDER BY ID))
O ......
SQL Server 导入和导出向导提供了生成 Microsoft SQL Server 2005 Integration Services (SSIS) 包最简单的方法。SQL Server 导入和导出向导可以访问各种数据源。可以向下列源复制数据或从其中复制数据:
· Microsoft SQL Server
· 平面文件
· Microsoft Off ......
使用PowerDesigner生成数据库
建表SQL
脚
本时,尤其是Oracle数据库时,表名一般会带引号。其实加引号是PL/SQL的规范,数据库会严格按照“”中的名称建表,如果没有“”,会按照
ORACLE默认的设置建表(DBA
STUDIO里面),默认是全部大写,这样,在ORACLE数据库里的字段就如“Column_1&rdqu ......
首先在sqlserver的安装路径下,如:D:\Program Files\Microsoft SQL
Server\MSSQL\,找到文件名是scptxfr.exe的文件,利用命令行工具:具体用法如下:
D:\PROGRA~1\MICROS~2\MSSQL\>scptxfr/?
命令行语法:
SCPTXFR /s
<服务器> /d <数据库> {[/I] | [/P <密码>]}
&n ......
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER PROCEDURE [dbo].[pagination]
@tblName varchar(255), -- 表名
@strGetFields varchar(1000), -- 需要返回的列
@fldName varchar(255), -- 排序的字段名
@PageSize int, -- 页尺寸
@PageIndex int, -- 页码
@OrderType bit, -- 设置排序类型, 非 0 值 ......