當前位置:首頁 » 數據倉庫 » c保存圖片到資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c保存圖片到資料庫

發布時間: 2023-05-24 04:04:37

1. c怎麼把數據存到sql

1. C#中怎麼把數據保存到ACCESS資料庫
Sqlmand是操作sql資料庫的,Access用OleDbmand首先定義一個鏈接對象OleDbConnection conn = new OleDbConnection("[資料庫連接字元串]");conn.Open(); 打開資料庫連接OleDbmand cmd = new OleDbmand("[Insert/Update/Delte語句]", conn);cmd.ExecuteNonQuery(); 執行操作,如果是查詢則不是用這個方法 最後別忘記關閉資料庫連接和釋放對象。
2. C# 如何將 圖片直接存入SQL資料庫中
把文件轉成二進制流出入資料庫

private void button2_Click(object sender, EventArgs e)

{

FileStream fs = new FileStream(textBox1.Text, FileMode.Open);

BinaryReader br = new BinaryReader(fs);

Byte[] byData = br.ReadBytes((int)fs.Length);

fs.Close();

string conn = "server=.;database=testDB;Uid=sa;Pwd=sa ";

SqlConnection myconn = new SqlConnection(conn);

myconn.Open();

string str = "insert into pro_table (pro_name,pro_file) values('測試文件',@file)";

Sqlmand mym = new Sqlmand(str, myconn);

mym.Parameters.Add("@file", SqlDbType.Binary, byData.Length);

mym.Parameters["@file"].Value = byData;

mym.ExecuteNonQuery();

myconn.Close();

}

從資料庫中把二進制流讀出寫入還原成文件

private void button4_Click(object sender, EventArgs e)

{

string conn = "server=.;database=testDB;Uid=sa;Pwd=sa ";

string str = "select pro_file from pro_table where pro_name='測試文件' ";

SqlConnection myconn = new SqlConnection(conn);

SqlDataAdapter sda = new SqlDataAdapter(str, conn);

DataSet myds = new DataSet();

myconn.Open();

sda.Fill(myds);

myconn.Close();

Byte[] Files = (Byte[])myds.Tables[0].Rows[0]["pro_file"];

BinaryWriter bw = new BinaryWriter(File.Open("D:\\2.rdlc",FileMode.OpenOrCreate));

bw.Write(Files);

bw.Close();

}
3. c#如何把圖片存取到SQL資料庫
一樓開玩笑了!!可以保存到資料庫的。

首先,你的資料庫里要有一個存放二進制數據的欄位。然後,用一個文件選擇控制項,讓用戶選擇圖片。

用FileStream.Read把圖片文件按照二進制讀取到byte[]中,接下來,鏈接資料庫,用sql語句,進行相應的插入操作,將資料庫的二進制數據的欄位賦值為byte[]就行了。以下是保存和顯示的代碼:private void SaveImage(string fileName) { Read the file into a byte array using (FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read)) { byte[] imageData = new Byte[fs.Length]; fs.Read(imageData, 0, (int)fs.Length); using (SqlConnection conn = new SqlConnection(connectionString)) { string sql = "insert into image (imagefilename,blobdata) values (@filename,@blobdata)"; Sqlmand cmd = new Sqlmand(sql, conn); cmd.Parameters.Add("@filename",SqlDbType.Text); cmd.Parameters["@filename"].Direction = ParameterDirection.Input; cmd.Parameters.Add("@blobdata", SqlDbType.Image); cmd.Parameters["@blobdata"].Direction = ParameterDirection.Input; Store the byte array within the image field cmd.Parameters["@filename"].Value = fileName; cmd.Parameters["@blobdata"].Value = imageData; conn.Open(); if (cmd.ExecuteNonQuery() == 1) { MessageBox.Show("Done"); } } } } private void LoadImage(string fileName) { using (SqlConnection conn = new SqlConnection(connectionString)) { string sql = "select blobdata from Image where ImageFileName like @filename"; Sqlmand cmd = new Sqlmand(sql, conn); cmd.Parameters.Add("@filename", SqlDbType.Text); cmd.Parameters["@filename"].Value = fileName; conn.Open(); object objImage = cmd.ExecuteScalar(); byte[] buffer = (byte[])objImage; BinaryWriter bw = new BinaryWriter(new FileStream("C:\\abcd.", FileMode.Create)); bw.Write(buffer); bw.Close(); MemoryStream ms = new MemoryStream(buffer); Image bgImage = Image.FromStream(ms); ms.Close(); this.BackgroundImage = bgImage; } } ------------------------------------------------------------------PS:用空情報我踩踩空間,謝謝。

/kxl361。
4. 如何將文件的路徑存入SQL資料庫中去
建一個表:JpgFiles,其中至少包含一個列:JpgPath,用來存放絕對路徑的字元串,所以這個列需要用varchar,長度假設為50,不夠的話自己再增加。

string strPath = @"d:\\up";

string[] fileNames = System.IO.Directory.GetFiles(strPath);

SqlConnection Cn=new SqlConnection(這里寫你的連接串);

Sqlmand Cmd=new Sqlmand("Insert JpgFiles values (@JpgPath)",Cn)

Cmd.Parameters.Add("@JpgPath",SqlDbType.VarChar,50);

foreach (string strName in fileNames)

{

Cmd.Parameters[0].Value=strName;

Cmd.ExecuteNoQuery();

}
5. 怎樣將數據存入mysql資料庫
MySQL命令行導出資料庫:

1,進入MySQL目錄下的bin文件夾:cd MySQL中到bin文件夾的目錄

如我輸入的命令行:cd C:\Program Files\MySQL\MySQL Server 4.1\bin

(或者直接將windows的環境變數path中添加該目錄)

2,導出資料庫:mysqlmp -u 用戶名 -p 資料庫名 >; 導出的文件名

如我輸入的命令行:mysqlmp -u root -p news > news.sql (輸入後會讓你輸入進入MySQL的密碼)

(如果導出單張表的話在資料庫名後面輸入表名即可)

3、會看到文件news.sql自動生成到bin文件下

命令行導入資料庫:

1,將要導入的.sql文件移至bin文件下,這樣的路徑比較方便

2,同上面導出的第1步

3,進入MySQL:mysql -u 用戶名 -p

如我輸入的命令行:mysql -u root -p (輸入同樣後會讓你輸入MySQL的密碼)

4,在MySQL-Front中新建你要建的資料庫,這時是空資料庫,如新建一個名為news的目標資料庫

5,輸入:mysql>use 目標資料庫名

如我輸入的命令行:mysql>use news;

6,導入文件:mysql>source 導入的文件名;

如我輸入的命令行:mysql>source news.sql;
6. 如何把文件存入到sql server 2008
1.MDF文件

在企業管理器中

右擊資料庫

點擊所有任務

附加資料庫

點三個點選擇文件

選中U盤中的MDF文件確定即可

2.BAK等備份文件:

新建空資料庫,取名最好為原資料庫名.

右擊新建的資料庫

點所有任務

點還原資料庫

點從設備

點選擇設備

點添加

定位到U盤中您的備份的文件

確定

點選項

點在現有資料庫上強制還原

點確定

等待

完成!

另外,站長團上有產品團購,便宜有保證

2. 如何在資料庫中存儲圖片路徑

你是用C/S模式還是B/S模式
C/S的話以二進制的方式存比較好。
B/S的話一般存路徑。
路徑是從程序的所在目錄開始的。

3. VS.C#如何向數據資料庫中存入和讀取圖片的

首先,在資料庫中要建立相應的欄位能保存Bytes,橋銷例如在SQL Server中用Image類型來定敏塌游義欄位。我所用到的資料庫大致結構如下:

欄位名
類型
備注

FileID
Int
自增欄位

FileName
Varchar(256)

FullName
Varchar(1024)

FileData
Image

然後就是寫入資料庫,代碼如下:

FileInfo fi = new FileInfo( txtFileName.Text );// Replace with your file name

if ( fi.Exists)

{

byte[] bData = null;

int nNewFileID = 0;

// Read file data into buffer

using ( FileStream fs = fi.OpenRead() )

{

bData = new byte[fi.Length];

int nReadLength = fs.Read( bData,0, (int)(fi.Length) );

}

// Add file info into DB

string strQuery = "INSERT INTO FileInfo "

+ " ( FileName, FullName, FileData ) "

+ " VALUES "

+ " ( @FileName, @FullName, @FileData ) "衫攜

+ " SELECT @@IDENTITY AS 'Identity'";

SqlCommand sqlComm = new SqlCommand( strQuery, sqlConn );

sqlComm.Parameters.Add( "@FileName", fi.Name );

sqlComm.Parameters.Add( "@FullName", fi.FullName );

sqlComm.Parameters.Add( "@FileData", bData );

// Get new file ID

SqlDataReader sqlReader = sqlComm.ExecuteReader();

if( sqlReader.Read() )

{

nNewFileID = int.Parse(sqlReader.GetValue(0).ToString());

}

sqlReader.Close();

sqlComm.Dispose();

if( nNewFileID > 0 )

{

// Add new item in list view

ListViewItem itmNew = lsvFileInfo.Items.Add( fi.Name );

itmNew.Tag = nNewFileID;

}

}

而讀出的代碼如下:

// Get new file name

string strFullName = dlgFBSave.SelectedPath;

if( strFullName[strFullName.Length - 1] != '\\' )

strFullName += @"\";

strFullName += lsvFileInfo.SelectedItems[0].Text;

string strQuery = "SELECT FileData FROM FileInfo "

+ " WHERE FileID = " + lsvFileInfo.SelectedItems[0].Tag.ToString();

SqlDataAdapter sqlDAdapter = new SqlDataAdapter(strQuery,sqlConn);

DataSet sqlRecordSet = new DataSet();

byte[] bData = null;

//Get file data from DB

try

{

sqlDAdapter.Fill( sqlRecordSet, "FileInfo" );

foreach( DataRow dr in sqlRecordSet.Tables["FileInfo"].Rows)

{

if( dr["FileData"] != DBNull.Value )

bData = ( byte[] )dr["FileData"];

}

}

catch(SqlException sqlErr)

{

MessageBox.Show( sqlErr.Message );

}

catch

{

MessageBox.Show( "Failed to read data from DB!" );

}

sqlRecordSet.Dispose();

sqlDAdapter.Dispose();

if( bData != null )

{

// Save file

FileInfo fi = new FileInfo( strFullName );

if( !fi.Exists )

{

//Create the file.

using (FileStream fs = fi.Create())

{

fs.Write( bData, 0, bData.Length);

}

}

else

{

//Create the file.

using (FileStream fs = fi.OpenWrite())

{

fs.Write( bData, 0, bData.Length);

}

}

}

不過需要提的一點,如果把大量的文件存入資料庫的話,會造成資料庫的臃腫,而且訪問量也會增大。所以現在比較流行的做法,是把文件上傳到伺服器上,而在資料庫上只保存文件的相對路徑即可。那麼訪問的時候,先通過資料庫得到文件的相對路徑,然後再訪問伺服器上的文件

4. C# 如何將 圖片直接存入SQL資料庫中


//把文件轉成二進制流出入資料庫
privatevoidbutton2_Click(objectsender,EventArgse)
{
FileStreamfs=newFileStream(textBox1.Text,FileMode.Open);
BinaryReaderbr=newBinaryReader(fs);
Byte[]byData=br.ReadBytes((int)fs.Length);
fs.Close();
拿螞鋒stringconn="server=.;database=testDB;Uid=sa;Pwd=sa";
SqlConnectionmyconn=newSqlConnection(conn);
myconn.Open();
stringstr="insertintopro_table(pro_name,pro_file)values('測試文件',@file)";
SqlCommandmycomm=newSqlCommand(str,myconn);
mycomm.Parameters.Add("@file",SqlDbType.Binary,byData.Length);
mycomm.Parameters["@file"].Value=byData;
mycomm.ExecuteNonQuery();
myconn.Close();
}

//從資料庫中把二進制流讀出寫入還原成文件
privatevoidbutton4_Click(objectsender,EventArgse)
{
stringconn="server=.;database=testDB;Uid=sa;Pwd=sa";
stringstr="selectpro_filefrompro_tablewherepro_name='測試文件'";
SqlConnectionmyconn=newSqlConnection(conn);
物此SqlDataAdaptersda=newSqlDataAdapter(str,conn);
DataSetmyds=newDataSet();
myconn.Open();
sda.Fill(myds);
myconn.Close();
Byte[]Files=(Byte[])myds.Tables[0].Rows[0]["pro_file"];
BinaryWriterbw=newBinaryWriter(File.Open("D:\2.rdlc",FileMode.OpenOrCreate));
bw.Write(Files);
bw.Close();

消晌}

5. C#怎樣把RTF格式流轉換成圖片存入資料庫

FileStream逗返pngfs=newFileStream("C:\1.png",FileMode.OpenOrCreate);
RenderTargetBitmaprtb=
旅指困newRenderTargetBitmap((int)richTextBox1.ActualWidth,(int)richTextBox1.ActualHeight,
拆念96.0,96.0,PixelFormats.Default);
rtb.Render(richTextBox1);
BitmapEncoderbe=newPngBitmapEncoder();
be.Frames.Add(BitmapFrame.Create(rtb));
be.Save(pngfs);
pngfs.Close();

6. (網頁)圖片的路徑c:/images/123.jpg 保存在資料庫中,如何讀出

打開資料庫,然後讀出<img src=<% =圖片的路徑%> width="" height="">

7. vc mfc中怎麼通過按鈕 「上傳圖片」把本機上的圖片讀入SQL資料庫

圖片就是文件嘛,把文件數據全部讀入到內存然後插入到
sql資料庫
中就可以了,但不建議這樣做,因為圖片數據比較大,存入資料庫會很慢,檢索也會很慢,建議只存入圖片的路徑,比如你要存入的圖片為c:\\test.bmp,那麼你存入數據的信息就為c:\\test.bmp,當有地方要使用該圖片時,只需取出c:\\test.bmp這個路徑就可以操作該圖片了。

8. 有一個圖片保存在"c:/123/123.jpg",如何把它的路徑保存到資料庫並讀出來

在wwwroot目錄建立一個目錄,例如images,將圖片保存在這個目告神錄中,在資料庫建立一個欄位,例如LJ,在這個欄位中輸入:/images/兄友閉123.jpg即可羨裂。