Mẫu này sẽ giải thích cho bạn cách bạn có thể lưu trữ tệp hoặc tài liệu trong cơ sở dữ liệu SQL Server. Nói chung, không nên lưu trữ tệp trong cơ sở dữ liệu vì nó có thể phát triển cơ sở dữ liệu nhanh chóng và có thể gây ra hiệu suất chậm hơn của cơ sở dữ liệu và máy chủ. Tốt nhất bạn nên sử dụng hệ thống tập tin để lưu trữ tập tin. Nhưng có thể có các kịch bản mà bạn có thể muốn lưu trữ các tệp trong cơ sở dữ liệu.
Để lưu trữ một tệp trong máy chủ sql, bạn cần đọc dữ liệu tệp vào một mảng byte. Khi bạn có dữ liệu tệp trong mảng byte, bạn có thể dễ dàng lưu trữ dữ liệu tệp này trong máy chủ sql bằng các tham số sql. Mã sau giải thích cho bạn làm thế nào để làm điều này.
14.//Use BinaryReader to read file stream into byte array.
15.BinaryReader br = newBinaryReader(fStream);
16.
17.//When you use BinaryReader, you need to supply number of bytes to read from file.
18.//In this case we want to read entire file. So supplying total number of bytes.
19.data = br.ReadBytes((int)numBytes);
20.
21.//Close BinaryReader
22.br.Close();
23.
24.//Close FileStream
25.fStream.Close();
26.
27.returndata;
28.}
Cách đọc byte dữ liệu tệp từ bảng SQL Server
Để đọc tệp từ SQL Server, trước tiên hãy chuẩn bị bộ dữ liệu sẽ chứa dữ liệu từ bảng SQL Server. Liên kết dữ liệu này với một điều khiển Gridview trên mẫu.
01.//Get table rows from sql server to be displayed in Datagrid.
Tải mẫu từ liên kết trên đầu trang. Trích xuất trong một thư mục.
Khôi phục cơ sở dữ liệu SQL Server từ thư mục con Cơ sở dữ liệu SQL.
Nếu bằng cách nào đó bạn không thể khôi phục cơ sở dữ liệu được cung cấp, bạn có thể tạo bảng cần thiết bằng cách sử dụng tập lệnh (SQLScript.txt) được cung cấp trong thư mục Cơ sở dữ liệu SQL.
Mở giải pháp và chạy nó. Thay đổi chuỗi kết nối cho cơ sở dữ liệu của bạn.
Nhấp vào nút Kết nối. Để thêm tệp mới vào cơ sở dữ liệu, nhấp vào nút Tệp mới . Nhấp vào nút Duyệt trong cửa sổ Tệp mới để chọn tệp. Sau đó bấm vào Save để lưu nó.
Script trong SQL Server bản chất là các file SQL, dùng để backup, restore, chia sẻ dữ liệu một cách nhanh chóng.
Bình thường để Run Script thì chỉ cần Ctrl + O để mở file
Tuy nhiên, trường hợp của mình lại bị lỗi @@
Do vậy mình Run Script theo cách chạy lệnh command line
sqlcmd -S DESKTOP-SIUNBTT -i t1.sql
Với DESKTOP-SIUNBTT là tên SQL Server của mình, bạn có thể nhập địa chỉ Ip hay cái gì mà bạn chọn khi cài SQL Server ở bước 11. Nếu bạn để mặc định thì thường nó sẽ là tên máy của bạn.
Nếu chạy mà báo không tìm thấy hay nhận diện được lệnh sqlcmd thì kiểm tra lại các biến môi trường của SQL Server đã được thêm vào chưa
Nếu chạy ok thì sẽ hiện như hình dưới. Nó hiện warning ko sao cả
Run Script SQL Server
Sau khi chạy xong thì vào kiểm tra Database thử
Lúc này ta sẽ thấy danh sách các bảng dữ liệu xuất hiện trong Database của mình
Thêm User loại SQl Server Authetication cho SQL Server
Như lúc nãy phần đăng nhập vào SQL Server mình có đề cập là login dạng Windows Authentication. Vậy trường hợp cần thông số để login vào bằng thằng khác thì sao? Chẳng hạn không dùng SSMS mà dùng Adminer để quản lý Database trên Web hay kết nối SQL Server với các ứng dụng khác, với PHP,.. chẳng hạn.
A, thì lúc đó chúng ta cần account cho kiểu login truyền thống. Login kiểu truyền thống cần những gì:
Server Address
Port
Username
Password
Server Address với Port thì là những thứ mặc định có của SQL Server rồi, còn account login vào? Chúng ta sẽ cần tạo tài khoản dạng SQl Server Authetication.
Tài khoản SQl Server Authetication sẽ cho phép chúng ta đăng nhập bằng username và password trên bất kỳ máy nào, hệ thống nào trỏ đến SQL Server address được.
Trong SSMS chúng ta vô phần Security, rồi nhấp chuột phải chọn New Login
Security -> New Login
Điền các thông tin cần thiết và quan trọng nhất là chọn loại account là SQl Server Authetication như hình bên dưới
SQl Server Authetication
Trong thẻ User Mapping chúng ta sẽ map database cho user đó
…
Tạm thời đến đây. Giờ có việc phải đi rồi
Mai viết tiếp :v
… tobe continue
–soiqualang_chentreu–
mình đang kẹt vấn đề tạo table trong sql ngay bằng code c# , mình có tìm hiểu cách làm trên mạng thì cách của mình đúng , nhưng khi chạy code thì lại không hề thấy tạo ra bảng, rù có refresh rồi
ai biết lỗi, hãy mẹo chỉ mình vs
privatestaticstring duongdan = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=D:\thuctap.net\quanlythuvien\quanlythuvien\db_quanlythuvien.mdf;Integrated Security=True";
privatestatic SqlConnection ketnoi()
{
returnnew SqlConnection(duongdan);
}
publicstaticvoidthemsuaxoa(string sql)
{
SqlConnection conn = ketnoi();
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.ExecuteNonQuery();
}
if (!string.IsNullOrEmpty(mode)) {
string sqlID = truyvan.laygiatri("select id from tb_taikhoan where mode=" + mode + "");
DateTime date = DateTime.Now;
string ngaytao = date.ToString("ddMMyyyy");
string TableName = "tb_save"+ngaytao + sqlID;
string sqlCheckNameTable = "SELECT COUNT(*) AS EXIST FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME=N'"+TableName+"'";
string check = truyvan.laygiatri(sqlCheckNameTable);
if (check == "0")
{
string createTable = "CREATE TABLE tb_test( id INT(11) NOT NULL, idsach INT(11) NOT NULL, id_member INT(11) NOT NULL, PRIMARY KEY(id) )";
truyvan.themsuaxoa(createTable);
//MessageBox.Show(""+TableName);
}
else
{
MessageBox.Show("table đã có không thể tạo thêm");
}
Một vấn nạn mà bất cứ ai dùng máy tính đều cảm thấy khó chịu là lỗi “has stop working”. Lỗi này thì có nhiều nguyên nhân, có thể do win thiếu hoặc mất file, do virut, do driver chưa đúng ….“Has stop working” gây không ít khó chịu cho người dùng. Hôm nay mình sẽ chia sẻ cho các bạn 1 số thủ thuật để khắc phục tình trạng này.
Ở đây tôi sẽ hướng dẫn các bạn 2 cách khắc phục mà tôi đã thực hiện thành công
Cách 1: Khắc phục bằng file Reg. Chạy file reg sau đó khởi động lại máy Cách 2: Các bạn dùng các phần mềm diệt virus như Avast, KIS,… diệt và xóa các file bị nhiễm sau đó khởi động lại và sẽ hết lỗi
Khuyến khích các bạn sử dụng cách 1 để nhanh hơn. Nếu cách 1 không khắc phục được các bạn mới làm cách này.