Các phương thức open và close của lớp SqlConnection dùng để mở và đóngkết nốiSqlConnection StringKetNoi = new SqlConnection @"Data Source=localdb\v11.0;Initial StringKetNoi.open; Với đoạ
Trang 11
Trang 2Ta sẽ tiến hành tạo 1 app là một cửa sổ đăng nhập với tài khoản và mật khẩu đượclưu trong cơ sở dữ liệu App này sẽ được tạo trên Visual Studio
1.1 Tạo giao diện
Ta sẽ tạo một cửa sổ winform dùng để đăng nhập như sau
Nếu người dùng nhập vào tài khoản và mật khẩu đúng với dữ liệu được lưu trongdatabase sẽ có thông báo là “ Đăng nhập thành công” và ngược lại thì sẽ là “Đăng nhậpthất bại”
Tuy nhiên ban đầu nếu kết nối đến database không thành công thì dù có nhập đúng
dữ liệu sẽ báo về là “ Lỗi kết nố| “
1.2 Tạo Kết nối đến SQL server
Trong bài thực hành này ta sẽ tạo 1 object của class SqlConnection và cung cấp 1chuỗi ký tự cho thuộc tích ConnectionString của nó SqlConnection là class hỗ trợ kết nốiđến cơ sở dữ liệu của Sql server connectionString là thuộc tính chứa tham số dành có
việc kết nối này
"Data Source=(localdb)\v11.0;AttachDbFilename=" + path + @"\" + databaseName +
• DataSource là tên Server
• AttachDBFileName là đường dẫn đến fĩle database dưới dạng đuôi mdf
• Initial Catalog là tên database
Trang 3Các phương thức open và close của lớp SqlConnection dùng để mở và đóngkết nối
SqlConnection StringKetNoi = new SqlConnection (@"Data Source=(localdb)\v11.0;Initial
StringKetNoi.open();
Với đoạn code trên ta đã có thể kết nối vào SQL server, tuy nhiên nếu chỉ viếttrong hardcode như này thì lại bất tiện cho việc đóng gói ứng dụng Vì khi chuyểnsang máy khác ta không thể mở ứng dụng ra để cài lại được VÌ vậy, ta sẽ sử dụng filecấu hình để lưu trữ và truy xuất connectionString
Mỗi project khi tạo ra se chứa sẵn 1 file XML chứa thông tin cấu hình
(App.coníig) Đây là file xml sẽ được copy vào thư mục của ứng dụng khi cài đặt.Thông tin cấu hình ở đây có thể truy xuất khi chạy ứng dụng dưới dạng notepad
Để sử dụng App.coníig và connectionstring ta làm như sau
Thay đổi file App.coníig bằng cách thêm <connectionStrings> xanh lá vào
như dưới đây
<? xml version = " 1.0 " encoding = " utf-8 " ?>
< add name = " my connection string " connectionString = " Data Source=localhost\
SQLEXPRESS1;Initial Catalog =du lieu;Integrated Security=True " />
</ connectionStrings >
</ configuration >
Sau đó tham chiếu đến thư viện System.Coníiguration
Trang 4SI Solution 'LearnAdoNet' (1 project)
J |õ» ConnectToSql t> ỷ*Properties
J □□ Reterences
0? Analyzers Microsott.CSharp System System.Configuration
Reíerence Manager - ConnectToSql
J Assemblies Targeting: ,NETFramework 4.6.1
SqlConnection CoSoDulieu = new SqlConnection(StringKetNoi);
Sau đây là chương trình cho app đăng nhập:
2 private void button1_Click( object sender, EventArgs e)
3 {
v11.0;AttachDbFilename=" + path + @"\" + databaseName + ";Integrated
Extensions Recent t> Prọjerts
t> Shared Projects
> COM
t> Browse
Name System.Activities System Activities.C ore.p resentati 0 n System.Activities.Durablelnstancing System.Activities.Presentation System.Addln
System.Addln.Contract System.ComponentModel.Composition System ComponentModel.Composition.R
System ComponentModel.DataAnnotations
Name:
System.Coníiguration Created by:
Microsott Corporation Verskỉn:
System Data
Trang 5SqlCommand cmd = new SqlCommand(sql, CoSoDulieu);
SqlDataReader data = cmd.ExecuteReader();
if (data.Read() == true ) {
MessageBox.Show( "Đăng nhập thành công!" );
} else { MessageBox.Show( "Đăng nhập thất bại!" );
} } catch (Exception ex) {
MessageBox.Show( "Lỗi Kết Nối" );
} } private void button2 Click( object sender, EventArgs e) {
Close();
}
2 Đóng gói sản phẩm
Advanced Installer là một tiện ích Windows được thiết kế để giúp bạn xây dựng các
Mặc dù nó có nhiều tham số dành riêng nhưng giao diện người dùng rất đơn giản và cho người dùng khả năng tạo dự án mới bằng cách chọn loại, cụ thể là trình cài đặt (ví dụ: ứng dụng Visual Studio hoặc NET,
gói 32/64-bit hỗn hợp), Java , cập nhật, bổ trợ, thiết bị di động và các thứ khác.
Link tải advanced installer
https://taiwebs.com/windows/download-advanced-installer-128.html
Mở phần mềm lên chọn Template theo dạng Visual Studio Application để chọn
2.1 Chọn project được đóng gói
Trang 6Sau khi kích chọn thì điền các mục thông tin APP như tên sản phẩm, tên công ty
Chọn dạng cài theo kiểu MSI setup file để có thể thêm ứng dụng vào cùng
Trang 7Tiếp tục ấn next, đến khi cửa sổ này hiện ra , kích vào ký hiệu để chọn app cầnđóng gói
Sau khi đã chọn App tiếp tục ấn NEXT
Trang 9Select all đê đính kèm theo các thư viện dll được sử dụng trong App
Visual Studio Import Wizard
0 Select / deselect all
Next > "I Cancel
Trang 10Create shortcuts for your applications
Choose which files wil have shortcuts.
These are the executable fìles in your application Check the fìles that you want to create shortcuts for For every file you can spedfy where to create shortcuts.
Name
0 WindowsFornnsApp39.exe C:\Usersy-lteourceVepos\WindowsFormsApp39\
Shortcuts fbr WindowsFormsApp39.exe:
0 Create shortcut on Desktop
o Create shortcut in Programs group from start menu
< Back I Next > I Cancel
Nếu các mục sau đó để theo default thì có thể tiếp tục ấn next đến khi hiện ra cửa
sổ này thì chọn finish,
Visual Studio Import Wizard
You have successíully completed the visual studio ỉmpõrt wizard
Press the Pinish button to exit the wizard or the Back
button to change the data you have entered.
Physical Source
Rename
Trang 11System Changes
Eráronment
2.2 Cài đặt các ứng dụng đi kèm
Ta quay trở lại phần cài đặt cho cả Project, gồm các mục
Chọn Customize đê cài thêm thuộc tính cho project
I
Ị AdmĩnistrativeTool5 Ị
Jj Application Data -ị! Common Application Data
J Local Application Data
|~3 Networlc Shortcưts
n Recentltems -ị! Printer Shortcuts
□ Public
J Public Documents Windows Libraries
I 1 IISWWWRoot
ĩ Ànalytics
Requirements
Launch Conditions Merge Mũdules User Interíace
Customize
Fu II path: APPDIR (ProgramFilesFũlder\Manufacturer\PrũductName)
Trong project này ta đang cần thêm 2 thứ đó là cài thêm file cài ứng dụng SQLserver express đi kèm đê có thê sử dụng được database khi project được cài trên một
máy
Trang 13client khác chưa có SQL server Thứ 2 là ta cần thêm chức năng tự động khởi tạodatabase khi ứng dụng được cài xuống
TÌm đến phần Requirements và kích chọn Prerequisites
Cuối cùng thì chọn apply để hoàn xác nhận đồng ý thêm
Đầu tiên ta chọn đến phần Presequisites kích chọn để cài đính kèm file SQLServer Express 2019 vào
□ SQL Server Express 2019 (web installer)
0 SQL Server Express LocalDB 2012 SP1 x64
□ SQL Server Express LocalDB 2012 SP1 X86
□ SQL Server Express LocalDB 2012 SP2 x64
0 SQL Server Express LocalDB 2012 SP 2 x86
Trong Pre-install sẽ chứa phần file cài SQL Server Express 2019
Trang 14■ọ.i Paclcages
V Pre-install
□ í SQL Server Express 2019
Feature-based Chained
Post-install (£• Windows Features
Wi ndows Server Roles
Tiếp theo vào phần SQL Database để tạo hoặc đính kèm file databaseTrong mục Database server chọn Predeíined Connection để tạo kết nối chodatabase
Trang 152.3 Tạo SQL Query để tạo database khi tiến hành cài đặt ứng dụng
—I DataBase server
V ự; Prer 1 ^
V tã! Predetined Connection
; gỉ} Custom Connectioni
ặ- SQLQuery Transaction Folder
Builds
X Cut
ũế] Paste
Trong phần cài đặt ta cần lưu ý cấu hình 1 số thông tin như sau
• Phần General mục Server :cần thêm tên của server ta cần kết nối đến
• Phần Authentication : tích vào Trusted Connnection
• Phần Catalogue mục Database : master
• Các thông tin còn tại có thể để default hoặc thay đổi theo yêu cầu của project
SQL Databases
SQL Scripts, Connections Predetined Connection
Trang 16se server
V íẵl Predeí
V SQLQueries 3- Query
8 ĩcript
B Sc.ipt_1
□ SQL Browse
31 SSRS Deployments
Trang 17Tạo database bằng script với lệnh
SQL Databases
SQL Script Q! Script Replacements
Ạ Down Remove
SQL Script
o From fìle: I u|
(•) Inlĩne:
— Inlĩne SQL scripú CREATE DATABASE du lieu
Sau đó tạo file Script để tạo cài đặt cho database hoặc có thể thêm Database có sẵn
bằng các add file script tạo từ trước vào
Thêm các script sau để tạo bảng trong database
CREATE TABLE [dbo].[Table_1](
[TaiKhoan] [nchar](20) NULL,[MatKhau] [nchar](20) NULL) ON [PRIMARY]
lầ Script
gj Script_1 SQL Brovvse
s SSRS Deployments
Trang 18Mật khẩu
tema
temas
2
duongkhue2Trong Mục Execution , Run tích dấu V vào phần at install để bảng được tạo đồngthời khi cài đặt xuống ứng dụng
Trang 19Run: 0 atinstall o during maintenance (repair / modilỹ)
□ at unỉnstall o during rollback
ở Script_1 là file script dùng để xóa database , ta đưa vào dòng code như dưới để
xóa database và chọn at unistall, tức là xóa khi ứng dụng bị gỡ bỏ
Cuối cùng ta sẽ chọn Run để hoàn tất việc đóng gói
□ during rollback
Trang 20• Lưu ý : Trong quá trình cài đặt SQL server Express 2019 ta cần đặt tên cho serverđúng với tên đã đặt trong phần lập trình
ở project này tên của server là : SQLEXPRESS1
3 Chạy demo project
Sau khi hoàn tất việc cài đặt project, ta mở app lên và chạy thử nghiệm , nhấp vàobiểu tượng sau để mở dự án
Nhập tài khoản và mật khẩu như trong bảng, ta sẽ thấy messageBox thông báođăng nhập thành công như hình
Inĩtaller 16.5 :
Product Details
70 Product Details [ĩiĩịĩĩ] Software Identifìcation F ProductlDs
Project Summary
Product Intữrmation
Product Details Digital Signature
Updater Upgrades
Licensing
CD/DVD Autorun
Product Detaíls Name
: Versio n:
Pnblishe r:
Product Support lrrfo
Trang 21Nếu nhập tài khoản và mật khẩu chưa được lưu trong database , hoặc nhập sai 1trong 2 , thì sẽ hiển thị như sau
Trang 22Cuối cùng để kiểm tra database đã được tạo, ta có thể vào ứng dụng Microsoft
SQL Server Management Studio
Có thể thấy database mang tến du_lieu đã được tự động tạo nhờ phần cài đặt củaproject này
s ti Graph Tables
s dbo.Table_1 EEI ti Vievvs [+) Éĩj External Resources (+] Ểì Synonyms [+1 ti Programmability [+1 LÌ Service Brolcer [+) ti storage 1+) lì Security (±1 ti thequan7S
Quick Launch (Ctrl+Q) DESKTOP-Q5MH325\SQLEXPRESS1.du_lieu - dbo.Table_1 - Microsott SQL Server Management Studio
TaiKhoan MatKhau
temas duonglch ue
temasl e1 duongkhu
temas2 e2 duongkhu
NULL
Trang 2320