sql server 2005 image数据类型的使用
最近做一个项目的时候需要往数据库内插入图片,上网查了一下,主要有两种方法,第一就是在数据库中存储图片的路径,然后在程序中根据读取的路径读取图片;这种方法简单、容易使用,但是在图片过多时不好管理。
第二种就是将图片转换成二进制存储于数据库中,sql server 2005有个image数据类型,专门用于存储图片,Image数据类型存储的是长度不确定的二进制数据,最大长度是2GB。
第一种方法很简单,主要想通过一个例子说一下第二种方法。步骤如下:
1.开发环境:visual studio 2008 + sql server 2005 语言:C#
2.在sql server 2005中新建一个数据库表,我这里用的是我自己项目的表,语法如下。
CREATE TABLE [dbo].[AdminInfo](
[AdminId] [nvarchar](15) NOT NULL,
[AdminName] [nchar](10) NOT NULL,
[Pas] [nvarchar](25) NOT NULL,
[Rights] [int] NOT NULL,
[Photo] [image] NULL)
注意photo字段是image类型。
3.这里主要通过一个简单控制台应用程序演示插入和读取图片的过程。完整代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Data.SqlClient;
using System.Data;
namespace CSharp
{
class insertImage
{
public string sqlconnstr = "Data Source=XIANGZI-PC\\SQLEXPRESS;Initial Catalog=Library;Persist Security Info=True;User ID=xz;Password=comeon";//数据库连接字符串;
public void InsertIMG()//插入图片
{
FileStream fs = new FileStream(@"D:\c.jpg", FileMode.Open, FileAccess.Read);//读取D盘c.jpg转换为数据流
Byte[] btye2 = new byte[fs.Length];
fs.Read(btye2, 0, Convert.ToInt32(fs.Length));
&nb
相关文档:
This has some predictable results that we can use for building queries. The root is always of the form (left = 1, right = 2 * (SELECT COUNT(*) from TreeTable)); leaf nodes always have (left + 1 = right); the BETWEEN predicate defines the subtrees; and so on. Here are some common queries that you can ......
一、基础
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、说 ......
c# SQL数据库远程连接及配置方法
一:C# 连接SQL数据库
Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;
Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;
Server=myServerAddress;D ......
{
SqlConnection cnn = new SqlConnection
("context connection=true");
cnn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cnn;
cmd.CommandText = "select * from customers";
SqlDataReader reader = cmd.ExecuteReader();
SqlContext.Pipe.Send(reader);
reader.Close();
cnn.Close();
}
......
下列语句部分是Mssql语句,不可以在access中使用。
SQL分类:
DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)
DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)
DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)
首先,简要介绍基础语句:
1、说明:创建数据库
CREATE DATABASE data ......