28.4.08

Các công cụ lưu trữ địa chỉ web và mật khẩu trực tuyến

TTO - Trong tất cả các trình duyệt luôn có chức năng sao lưu địa chỉ web mà người dùng Internet đều sử dụng qua là Favorites trong IE hay Bookmarks trong FireFox.
Tuy vậy, không phải lúc nào bạn cũng có thể sử dụng danh sách địa chỉ này khi đi đến máy tính khác. Do đó, các dịch vụ lưu trữ trực tuyến luôn là giải pháp linh hoạt nhất.
>> Những công cụ trực tuyến miễn phí tốt nhất - Phần I
Người dùng có thể xuất (export) các danh sách địa chỉ web trong Internet Explorer hoặc FireFox, rồi tải nó lên email để cất giữ. Khi muốn sử dụng ở máy khác thì tải nó về, nhập danh sách vào trình duyệt tương ứng rồi duyệt web. Quá phức tạp! Thật ra chỉ cần nhớ tài khoản của mình tại một trong những dịch vụ lưu trữ địa chỉ web bên dưới đây là bạn đã có thể quản lý tất cả danh sách web yêu thích và truy xuất bất cứ lúc nào.
Del.icio.us: Hiện diện ở hầu như tất cả các website tin tức, blog. Mức độ phổ biến của Del.icio.us (DIU) đã đưa dịch vụ này lên hàng top so với các đối thủ khác. Trang bị các tính năng, công nghệ mới nhất nên số lượng người dùng DIU đã lên tới con số hàng triệu. Bạn có thể kiếm những chỉ dẫn nấu ăn, các trang liên quan đến một chủ đề yêu thích, lưu trữ danh sách theo dạng cá nhân hoặc xuất danh sách bookmark (*).
Mặc dù tên của DIU khó nhớ nhưng giao diện rõ ràng, theo phong cách của website rao vặt phổ biến nhất ở Mỹ là Craigslist. Một bên là những bookmark đáng chú ý và bên phải là các thẻ (tag). DIU giới thiệu các thẻ phổ biến để người dùng dễ chọn lựa và theo đó đặt thẻ cho chính xác hơn.
Magnolia: ra đời sau Del.icio.us, tiện dụng hơn với liên kết thanh công cụ đơn. Magnolia thu thập thông tin mô tả của một trang web từ các mã HTML bên trong website đó. Người dùng chỉ cần đặt thẻ tag. Một tính năng hữu dụng khác là hệ thống đánh giá 5 sao và nút "Keep Private" giúp giữ những phần sao lưu không đưa lên công cộng.
Giống Del.icio.us, Magnolia dễ dàng nhập và xuất danh sách lưu trữ.
StumbleUpon: SU là một mạng xã hội hơn là một dịch vụ lưu trữ địa chỉ web. Tại đây, người dùng sẽ được giới thiệu nhiều website theo các lĩnh vực mà người dùng không cần tìm kiếm. Để sử dụng SU, bạn cần cài đặt một thanh công cụ. Trên thanh công cụ có một nút nhấn mà khi chọn, bạn sẽ được chuyển đến những website được đánh giá cao ngẫu nhiên trong lĩnh vực mà bạn chọn.
Bạn có thể bầu chọn, đánh giá hay đưa ra lời bình. Đánh dấu lại địa chỉ trang web và đưa vào danh sách lưu trữ. Hiện tại, StumbleUpon đã thuộc về "gã khổng lồ" eBay.
Furl: lưu trữ một bảng sao chép tất cả các trang web mà người dùng sao lưu. Furl cũng là dịch vụ duy nhất so với 3 dịch vụ trên có những chỉ mục đầy đủ nguyên văn của những trang để người dùng tìm kiếm.
So về mức độ phổ biến, thông dụng và khả năng phục vụ tốt nhất cho người dùng sử dụng dịch vụ lưu trữ địa chỉ web trực tuyến thì Del.icio.us dẫn đầu danh sách.
Sao lưu mật khẩu trực tuyến
Tương tự ở trên, các trình duyệt cũng có chức năng AutoComplete hoặc Password Manager dùng để sao lưu lại mật khẩu của các tài khoản website, diễn đàn, email... cho người dùng để khỏi mất công ghi nhớ tất cả. Người dùng chỉ việc nhớ 1 mật khẩu duy nhất để truy xuất đến các tài khoản được lưu.
Công dụng của các dịch vụ lưu mật khẩu trực tuyến sẽ giúp ích nhiều cho người dùng khi có nhiều tài khoản truy cập vào nhiều website, diễn đàn. Chỉ cần đăng nhập vào tài khoản dịch vụ thì chúng sẽ giúp điền thông tin vào các website.

Just1key nổi bật hơn các website khác nhờ chế độ bảo mật cao.Just1key
: Đây là dịch vụ lưu trữ trực tuyến duy nhất có chế độ bảo mật thời gian thực. Để ngăn chặn hacker đánh cắp mật khẩu người dùng, Just1Key sử dụng một Java Applet trong một cửa sổ trình duyệt để khi người dùng nhập mật khẩu trung tâm, applet sẽ mã hóa mật khẩu trước khi gởi đến máy chủ. Just1key gởi trả danh sách mật khẩu về cho người dùng trong một bảng được mã hóa, applet sẽ tiếp tục thực hiện giải mã để người dùng có thể đọc nó.
Bạn có thể cắt và dán mật khẩu vào website. Mật khẩu được giữ trong một danh sách đơn, khó điều khiển. Just1key không có chức năng tìm kiếm, nhập hay xuất danh sách nhưng người dùng có thể truy xuất đến mật khẩu thông qua thiết bị di động thông qua một trình duyệt hỗ trợ đăng nhập bảo mật SSL. Just1key là dịch vụ có phí với 2.49 USD/tháng.
PasswordSafe: Giao diện PasswordSafe dựa trên mã Javascript, thể hiện rõ ràng và có chức năng tìm kiếm lẫn chức năng tạo mật khẩu ngẫu nhiên. PasswordSafe không cung cấp nhiều thông tin về loại mã hóa trên máy chủ, việc truyền tải mật khẩu giữa máy chủ và máy trạm dựa trên SSL.
PasswordSafe thích hợp để lưu trữ mật khẩu cho các website thông thường, ít nhạy cảm.
Agatra: Sử dụng thuật toán Blowfish để mã hóa nhưng khi người dùng đăng nhập vào thì Agatra lại sử dụng trang chủ không bảo mật. Agatra gởi mật khẩu từ máy chủ đến máy tính của bạn qua kết nối SSL. Đối với các website phổ biến, Agatra sẽ tự động đăng nhập cho người dùng. Đây cũng là yếu điểm dễ khai thác mà các hacker có thể tận dụng.
Nhân tố quan trọng nhất khi chọn lựa dịch vụ sao lưu mật khẩu trực tuyến là bảo mật. Xét về yếu tố này thì Just1key nên được dùng hơn là PasswordSafe lẫn Agatra.
(*) Bookmark: địa chỉ web được lưu trữ lại để truy cập về sau.

Xử lý ổ cứng bị lỗi

Làm thế nào để có những bước xử lý cần thiết giúp ổ cứng hoạt động tốt nhất? Dưới đây là một số thủ thuật cần thiết để nhận biết và xử lý khi ổ cứng bị lỗi, nhất là với ổ cứng second-hand mua nhầm.


Dấu hiệu của một ổ cứng bắt đầu “đỏng đảnh”

Là một thành phần hết sức quan trọng của máy nên khi ổ cứng bị lỗi thì gần như ngay lập tức bạn sẽ “hứng chịu” những vấn đề như tốc độ mở, lưu, xóa các tệp tin rất chậm hay máy tính của bạn thường xuyên bị treo (hay còn gọi là đứng máy).

Thông thường khi xử lý những tác vụ nặng nề cũng có thể khiến máy bị treo trong khoảng một thời gian nhưng khi nguyên nhân là do đĩa cứng thì chuột và bàn phím đều không thể sử dụng được và chỉ còn một cách để thoát khỏi tình trạng đó là khởi động lại máy. Sau đó sẽ là sự xuất hiện những “vị khách không mời mà đến” là những tệp tin rất lạ mà chính bạn cũng không biết từ đâu ra.

Quá trình khởi động máy (boot) cũng sẽ gặp những trục trặc như bị đứng hoặc không nhận ổ cứng. Trường hợp nặng hơn là khi bị lỗi vật lý, đĩa cứng sẽ phát ra những âm thanh to hơn bình thường và đôi lúc có những âm thanh rất lạ như tiếng “cạch” to.

Giải quyết vấn đề “cứng”

Vấn đề “cứng” được nêu ra ở đây là lỗi vật lý liên quan đến dàn cơ, bo mạch xử lý hoặc các kết nối. Bạn hãy mở thùng máy ra để kiểm tra ổ cứng của mình. Đầu tiên, hãy gỡ ổ cứng ra, vệ sinh sạch sẽ bằng cọ và khăn khô. Sau đó là vệ sinh cáp nối, các tiếp điểm trên ổ cứng và trên bo mạch chủ. Kiểm tra thiết lập Master/Slave cho ổ cứng xem có chính xác không rồi cắm ổ cứng vào như cũ.

Mở máy lên và truy cập vào trình quản lý hệ thống BIOS và chọn chế độ tự động nhận diện đĩa cứng của bạn thì tỉ lệ hư “cứng” của đĩa đã giảm đi được nhiều phần. Còn nếu không nhận ra được, hãy thử kiểm tra lại các tiếp điểm, cắm cáp sang một khe khác để kiểm tra hoặc thay luôn dây cáp khác. Khi đã làm tất cả những bước trên mà vẫn không cho BIOS nhận diện được thì thành thật chia buồn với bạn vì bạn đành phải đưa đĩa cứng của mình đi bảo hành hoặc đến các trung tâm sửa chữa thiết bị tin học vậy.

Xử lý những vấn đề “mềm”

Sau khi BIOS đã nhận diện được đĩa cứng và bạn vẫn còn có thể vào Windows thì cách đơn giản nhất là dùng chương trình ScanDisk. Đây là một công cụ được tích hợp trong Windows giúp bạn kiểm tra và xác định đúng các sự cố xảy ra trên ổ cứng. Để sử dụng công cụ này, bạn làm như sau: Vào My Computer, nhấn chuột phải lên ổ đĩa cần kiểm tra, chọn Properties, chọn thẻ Tools và nhấn vào nút Check Now. Sau đó sẽ xuất hiện một cửa sổ với hay tùy chọn: Tự động sửa những file hệ thống bị lỗi và tìm kiếm các sự cố rồi phục hồi các bad sector. Hãy chọn cả hai và nhấn Start. Quá trình kiểm tra sẽ khá lâu (tùy theo dung lượng đĩa cứng).

Nếu bạn là một người khá rành máy tính và đã từng sử dụng qua đĩa Hiren’s Boot thì có thể sử dụng các ứng dụng kiểm tra đĩa cứng như Segate Seatools, Hitachi Drive Fitness Test, Western Digital Data LifeGuard Dianostic tùy theo thương hiệu đĩa cứng mà bạn đang dùng.

Các chương trình trên chuyên xử lý các lỗi của đĩa cứng (đặc biệt là lỗi bad sector) nên bạn có thể hoàn toàn tin tưởng vào chúng. Chỉ có một vấn đề với các chương trình này là quá trình chẩn đoán và sửa lỗi thường rất lâu (có thể trên 12 giờ liên tục cho các ổ cứng bị lỗi nhiều hoặc có dung lượng lớn).

Sau khi hoàn tất những thao tác trên, hãy chỉ lưu những dữ liệu ít quan trọng lên đĩa cứng này để kiểm tra hiệu quả sửa chữa. Nếu một thời gian sau mà đĩa cứng vẫn hoạt động bình thường, không phát hiện âm thanh hay bị lỗi dữ liệu thì bạn có thể lưu những dữ liệu quan trọng hơn lên nó. Tuy vậy, theo nguyên lý bảo vệ sự an toàn cho dữ liệu, bạn hãy luôn sao lưu tất cả vào một đĩa cứng hoặc thiết bị lưu trữ khác trong một thời gian nhất định (1-3 tháng/lần).

Theo DƯƠNG VĂN TÚ, eCHip

7.4.08

Hướng dẫn Việt hóa & import skin cho IPB v2.3.4

Các bro down về bung nén ra, vô folder "Documentation" xem hướng dẫn setup nha.. Ở đây tui chỉ hướng dẫn Việt hóa & add thêm skin thôi.

Có sẵn một số skin đẹp rồi.

Chúc vui vẻ.

1. Cach them lang tiếng Việt :
CODE- Vao AdminCP --> Look & Feel --->Manage Languages ---> click "Create new language set" --> Ở ô "Language Set Name" Nhập vào tên lang , ở đây là :Tiếng Việt.
- copy toàn bộ file trong folder “Lang_Vietnamese\Lang” của bộ source Vô folder “cache\lang_cache\2” đây là folder moi dc tao sau khi add thêm lang ở bước trên, ví dụ “2”

2. Thêm bộ gõ tiếng việt.
CODE- Copy file “viettype.js” trong folder “Lang_Vietnamese” của bộ source vô folder root cài đặt forum.
-Vào AdminCPSkin manager Editing the Board Header and Footer Wrapper
chèn đoạn sau “” ngay dưới dòng “<% JAVASCRIPT %>”


3. Chọn UTF-8 là mặc định cho forum như sau :
CODE- trong AdminCP đi ở phần :Tools & Settings ->General Configuration->Document character set-> Thay bằng utf-8
Rùi lưu lại thay đổi là Ok!

4. Thay doi skin
CODEVào AdminCP, Look and Feel, Skin Manager, Skin Import/Export, Importing
1/ Import Skin Templates
- Upload XML Template set: bấm vào nút "browse" và di chuyển đến thư mục skin mà bạn đã down về, giải nén, và bấm vào file có tên .... skin..., và bấm nút "Open"
- OR enter the filename of the XML Template Set: bạn có thể bỏ trống khu này
- New Skin Set Name?: chọn 1 cái tên cho skin mới của bạn
- Use with which image set?: chọn "-none-"
- Bấm vào "IMPORT SKIN XML"
2/ Import Skin Images
- Upload XMLarchive Image set: bấm vào nút "browse" và di chuyển đến thư mục skin mà bạn đã down về, giải nén, và bấm vào file có tên .... image..., và bấm nút "Open"
- OR enter the filename of the XMLarchive Image Set: bạn có thể bỏ trống khu này
- New Image Set Directory Name?: chọn 1 cái tên cho thư mục ảnh của bạn. Thường là dùng chung tên của skin mà bạn đã tạo ra ở trên
- Use with which skin set?: [b]chọn đúng cái skin template đã import ở trên[/b].
- Bấm vào "IMPORT SKIN IMAGES"
3/ Import Skin Macros
Bạn có thể bỏ qua giai đoạn này nếu người làm skin không có cung cấp cho bạn cái skin macro
Nếu Có file thì làm như sau-
Upload XMLarchive Image set: bấm vào nút "browse" và di chuyển đến thư mục skin mà bạn đã down về, giải nén, và bấm vào file có tên .... macro..., và bấm nút "Open"
- OR enter the filename of the XMLarchive Image Set: bạn có thể bỏ trống khu này
- Use with which skin set?: [b]chọn đúng tên mà bạn đã đặt hồi nãy[/b]


Link download

28.3.08

Tìm hiểu về màn hình laptop

Nếu muốn mua máy tính xách tay nhưng không có nhiều kinh nghiệm về display thì những thông tin dưới đây có thể sẽ giúp ích cho bạn. Lời khuyên chung là cần tìm hiểu về điều kiện bảo hành với chấm màn hình của từng hãng.



Công nghệ được sử dụng phổ biến trong các dòng máy tính xách tay trên thị trường hiện nay là tinh thể lỏng (LCD - Liquid Crystal Display). Kích thước và độ phân giải là các yếu tố phân biệt giữa các sản phẩm. Độ phân giải trên LCD được xác định bằng các điểm chấm (pixel). Mỗi điểm được cấu thành bởi 3 chấm phụ: đỏ, xanh lá cây và xanh nước biển. 3 màu này kết hợp với nhau để tạo thành màu hoàn chỉnh cần hiển thị.

GNet Media

Ngày càng có nhiều người mua máy tính xách tay nhưng không phải ai cũng có

 
kinh nghiệm lựa chọn màn hình tốt. Ảnh: N.H.





Độ phân giải là một “thước đo” khả năng hiển thị. Ví dụ như một màn hình XGA 14.1” tiêu chuẩn sẽ có độ phân giải 1024 x 768. Trong đó, 1024 là số điểm chấm theo chiều ngang, 768 là số điểm chấm theo chiều dọc.



Với model SXGA 14.1” tiêu chuẩn thì độ phân giải là 1280 x 1024. Nếu một hình ảnh ở trên XGA có kích thước 20 x 10 pixel, thì trên SXGA, nó sẽ có kích thước tương đối nhỏ hơn, mặc dù số điểm chấm được sử dụng để hiển thị là như nhau. Điều này giúp cho SXGA hiển thị được nhiều hình ảnh hơn, tạo nên cảm giác “rộng hơn” so với XGA.



Hầu hết màn LCD hiện nay sử dụng công nghệ TFT (Thin-Film Transistor), hay còn gọi là hiển thị chủ động (active matrix display). Tên gọi này để phân biệt với hiển thị bị động (passive matrix display). Sản phẩm TFT sử dụng một bóng bán dẫn (transistor) riêng biệt tại mỗi điểm chấm phụ, được kích hoạt bởi dòng điện rất nhỏ, giúp tốc độ hiển thị màu nhanh hơn. Do đó, với màn hình hiển thị chủ động, các thay đổi về màu sắc hay hình ảnh sẽ chân thực và nhanh hơn nhiều so với các thiết bị bị động.



Nếu bóng bán dẫn nối tắt hoặc hở sẽ dẫn đến một điểm chấm không có khả năng hiển thị màu sắc bình thường, gọi là điểm chết (dead pixel) và nó có thể bị sáng, chỉ hiển thị một màu như màu đỏ, màu xanh, màu trắng hoặc mất hẳn, chỉ nhìn thấy màu đen.



Trong quá trình sản xuất, rất khó để có thể xác định một bóng bán dẫn bị hỏng hay không. Thường chỉ khi sản phẩm "đã ra lò" hoàn chỉnh người ta mới xác định được nó có điểm chết hay không. Nếu các nhà sản xuất LCD buộc phải loại bỏ thiết bị có điểm chết, dù chỉ là một điểm, chi phí chế tạo và giá bán của màn hình LCD có thể đã đội lên rất cao.



Vậy tiêu chuẩn của số điểm chết được chấp nhận với mỗi màn hình bao nhiêu là vừa? Câu hỏi này phụ thuộc vào mỗi nhà sản xuất riêng biệt. Ví dụ như với Apple, không có một câu trả lời cụ thể là bao nhiêu điểm chấm hỏng sẽ được bảo hành. Hoặc với Lenovo, số lượng này được quy định tùy theo loại màn hình được sử dụng, nhìn chung rơi vào khoảng 5 - 6 chấm.

Creating a SQL Server database programmatically using VB.NET

SQL not only let you select, add, and delete data from databases table, it also provides commands to manage databases. Using SQL statements you can create database objects programmatically such as a table, view, stored procedure, rule, index and so on. It also provides commands to alter a database and database schemas for example adding and deleting a column from a database table, adding some constraints to a column and so on. This example shows you how to create a new database table, add data to it, create a view of the data, alter database table and then delete the newly created table.


In this application, I'll create a SQL Server database, create a database table, add data to it, create database objects such as views, stored procedures, rules, and index and view data in the data grid using Sql data provider.


To test this application, create a Widows application add a data grid control and some button controls. You can even test code by adding only one button or one button for each activity. Our application form looks like Figure 1.


GNet Media

Figure 1. Creating a database and it's object application.


After adding controls, add the following variables in the beginning of the form class.


Private ConnectionString As String = "Integrated Security=SSPI;" + "Initial Catalog=;" + "Data Source=localhost;"

Private reader As SqlDataReader = Nothing

Private conn As SqlConnection = Nothing

Private cmd As SqlCommand = Nothing

Private AlterTableBtn As System.Windows.Forms.Button

Private sql As String = Nothing

Private CreateOthersBtn As System.Windows.Forms.Button

Private button1 As System.Windows.Forms.Button


First thing I'm going to do is create ExecuteSQLStmt method. This method executes a SQL statement against the SQL Sever database (mydb which I will create from my program) using Sql data providers using ExecuteNonQuery method. The ExecuteSQLStmt method is listed in Listing 1.


Private Sub ExecuteSQLStmt(ByVal sql As String)

' Open the connection

If conn.State = ConnectionState.Open Then

conn.Close()

End If

ConnectionString = "Integrated Security=SSPI;" + "Initial Catalog=mydb;" + "Data Source=localhost;"

conn.ConnectionString = ConnectionString

conn.Open()

cmd = New SqlCommand(sql, conn)

Try

cmd.ExecuteNonQuery()

Catch ae As SqlException

MessageBox.Show(ae.Message.ToString())

End Try

End Sub 'ExecuteSQLStmt


Listing 1. The ExecuteSQLStmt method.


After this I'm going to create a new SQL Server database. The CREATE DATABASE SQL statement creates a database. The syntax of CREATE DATABASE depends on the database you create. Depending on the database type, you can also set values of database size, growth and file name. Listing 2 creates a SQL Server database mydb and data files are stored in the C:\\mysql directory.


'This method creates a new SQL Server database

Private Sub CreateDBBtn_Click(ByVal sender As Object, ByVal e As System.EventArgs)

' Create a connection

conn = New SqlConnection(ConnectionString)

' Open the connection

If conn.State <> ConnectionState.Open Then

conn.Open()

End If

Dim sql As String = "CREATE DATABASE mydb ON PRIMARY" + "(Name=test_data, filename = 'C:\mysql\mydb_data.mdf', size=3," + "maxsize=5, filegrowth=10%)log on" + "(name=mydbb_log, filename='C:\mysql\mydb_log.ldf',size=3," + "maxsize=20,filegrowth=1)"

ExecuteSQLStmt(sql)

End Sub 'CreateDBBtn_Click


Listing 2. Creating a SQL Server database.


Now next step is to create a table. You use CREATE TABLE SQL statement to create a table. In this statement you define the table and schema (table columns and their data types). Listing 3 creates a table myTable with four column listed in Table 1.


 



































Column Name Type Size Property
myId integer Primary Key
myName char 50 Allow Null
myAddress char 255 Allow Null
myBalance float 8 Allow Null


Table 1. New table myTable schema.


Private Sub CreateTableBtn_Click(ByVal sender As Object, ByVal e As System.EventArgs)

' Open the connection

If conn.State = ConnectionState.Open Then

conn.Close()

End If

ConnectionString = "Integrated Security=SSPI;" + "Initial Catalog=mydb;" + "Data Source=localhost;"

conn.ConnectionString = ConnectionString

conn.Open()

sql = "CREATE TABLE myTable" + "(myId INTEGER CONSTRAINT PKeyMyId PRIMARY KEY," + "myName CHAR(50), myAddress CHAR(255), myBalance FLOAT)"

cmd = New SqlCommand(sql, conn)

Try

cmd.ExecuteNonQuery()

' Adding records the table

sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) " + "VALUES (1001, 'Puneet Nehra', 'A 449 Sect 19, DELHI', 23.98 ) "

cmd = New SqlCommand(sql, conn)

cmd.ExecuteNonQuery()

sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) " + "VALUES (1002, 'Anoop Singh', 'Lodi Road, DELHI', 353.64) "

cmd = New SqlCommand(sql, conn)

cmd.ExecuteNonQuery()

sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) " + "VALUES (1003, 'Rakesh M', 'Nag Chowk, Jabalpur M.P.', 43.43) "

cmd = New SqlCommand(sql, conn)

cmd.ExecuteNonQuery()

sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) " + "VALUES (1004, 'Madan Kesh', '4th Street, Lane 3, DELHI', 23.00) "

cmd = New SqlCommand(sql, conn)

cmd.ExecuteNonQuery()

Catch ae As SqlException

MessageBox.Show(ae.Message.ToString())

End Try

End Sub 'CreateTableBtn_Click 


Listing 4. Creating a database table.


As you can see from Listing 5, I also add data to the table using INSERT INTO SQL statement.


The CREATE PROCEDURE statement creates a stored procedure as you can see in Listing 10-18, I create a stored procedure myPoc which returs data result of SELECT myName and myAddress column.


Private Sub CreateSPBtn_Click(ByVal sender As Object, ByVal e As System.EventArgs)

sql = "CREATE PROCEDURE myProc AS" + " SELECT myName, myAddress FROM myTable GO"

ExecuteSQLStmt(sql)

End Sub 'CreateSPBtn_Click


Listing 5. Creating a stored procedure programmatically.


Now I show you how to create views programmatically using CREATE VIEW SQL statement. As you can see from Listing 6, I create a view myView which is result of myName column rows from myTable.


Private Sub CreateViewBtn_Click(ByVal sender As Object, ByVal e As System.EventArgs)

sql = "CREATE VIEW myView AS SELECT myName FROM myTable"

ExecuteSQLStmt(sql)

End Sub 'CreateViewBtn_Click


Listing 6. Creating a view using CREATE VIEW


The ALTER TABLE is a useful SQL statement if you need to change your database schema programmatically. The ALTER TABLE statement can be used to add and remove new columns to a table, changing column properties, data types and constraints. The Listing 7 show that I change the database schema of myTable by first change column data type range from 50 to 100 characters and by adding a new column newCol of TIMESTAMP type.  


Private Sub AlterTableBtn_Click(ByVal sender As Object, ByVal e As System.EventArgs)

sql = "ALTER TABLE MyTable ALTER COLUMN" + "myName CHAR(100) NOT NULL"

ExecuteSQLStmt(sql)

End Sub 'AlterTableBtn_Click


Listing 7. Using ALTER TABLE to change a database schema programmatically.


The new table schema looks like Table 2. 


 









































Column Name Type Size Property
myId integer Primary Key
myName char 50 Allow Null
myAddress char 255 Allow Null
myBalance float 8 Allow Null
newCol timestamp 8 Allow Null


Table 2. MyTable after ALTER TABLE


You can also create other database object such as index, rule, and users. The code listed in Listing 8 creates one rule and index on myTable.


Note: Create Index can only create an index if you don't have an index on a table. Otherwise you will get an error message. 


Private Sub CreateOthersBtn_Click(ByVal sender As Object, ByVal e As System.EventArgs)

sql = "CREATE UNIQUE CLUSTERED INDEX " + "myIdx ON myTable(myName)"

ExecuteSQLStmt(sql)

sql = "CREATE RULE myRule " + "AS @myBalance >= 32 AND @myBalance < 60"

ExecuteSQLStmt(sql)

End Sub 'CreateOthersBtn_Click


Listing 8. Creating rules and indexes using SQL statement.


The DROP TABLE command can be used to delete a table and its data permanently. The code listed in Listing 9 deletes myTable. 


Private Sub DropTableBtn_Click(ByVal sender As Object, ByVal e As System.EventArgs)

Dim sql As String = "DROP TABLE MyTable"

ExecuteSQLStmt(sql) '

End Sub 'DropTableBtn_Click


Listing 9. Deleting table using DROP TABLE.


Now next step is to view data from the table, view and stored procedure. The ViewDataBtn_Click method listed in Listing 10 shows the entire data from the table. The ViewSPBtn_Click and ViewViewBtn_Click methods view stored procedure and view data we have created earlier. As you can see using views and stored procedures work same as you use a SQL Statement. We have discussed working with Views and stored procedures in the beginning of this chapter. As you can see from Listing 10, 11, and 12, I view data from stored procedure and view.  


Private Sub ViewDataBtn_Click(ByVal sender As Object, ByVal e As System.EventArgs)

'/ Open the connection

If conn.State = ConnectionState.Open Then

conn.Close()

End If

ConnectionString = "Integrated Security=SSPI;" + "Initial Catalog=mydb;" + "Data Source=localhost;"

conn.ConnectionString = ConnectionString

conn.Open()

' Create a data adapter

Dim da As New SqlDataAdapter("SELECT * FROM myTable", conn)

' Create DataSet, fill it and view in data grid

Dim ds As New DataSet("myTable")

da.Fill(ds, "myTable")

dataGrid1.DataSource = ds.Tables("myTable").DefaultView

End Sub 'ViewDataBtn_Click


Listing 10. Viewing data from a database table.



Private Sub ViewSPBtn_Click(ByVal sender As Object, ByVal e As System.EventArgs)

'/ Open the connection

If conn.State = ConnectionState.Open Then

conn.Close()

End If

ConnectionString = "Integrated Security=SSPI;" + "Initial Catalog=mydb;" + "Data Source=localhost;"

conn.ConnectionString = ConnectionString

conn.Open()

' Create a data adapter

Dim da As New SqlDataAdapter("myProc", conn)

' Create DataSet, fill it and view in data grid

Dim ds As New DataSet("SP")

da.Fill(ds, "SP")

dataGrid1.DataSource = ds.DefaultViewManager

End Sub 'ViewSPBtn_Click


Listing 11.Using a stored procedure to view data from a table.


Private Sub ViewViewBtn_Click(ByVal sender As Object, ByVal e As System.EventArgs)

' Open the connection

If conn.State = ConnectionState.Open Then

conn.Close()

End If

ConnectionString = "Integrated Security=SSPI;" + "Initial Catalog=mydb;" + "Data Source=localhost;"

conn.ConnectionString = ConnectionString

conn.Open()

' Create a data adapter

Dim da As New SqlDataAdapter("SELECT * FROM myView", conn)

' Create DataSet, fill it and view in data grid

Dim ds As New DataSet

da.Fill(ds)

dataGrid1.DataSource = ds.DefaultViewManager

End Sub 'ViewViewBtn_Click


Listing 12.Using a view to view data from a table.


Finally, I create AppExit method which releases the connection and reader objects and I call them from the Dispose method as you can see in Listing 13. 


Protected Overrides Sub Dispose(ByVal disposing As Boolean)

AppExit()

If disposing Then

If Not (components Is Nothing) Then

components.Dispose()

End If

End If

MyBase.Dispose(disposing)

End Sub 'Dispose

' Called when you are done with the applicaton

' Or from Close button

Private Sub AppExit()

If Not (reader Is Nothing) Then

reader.Close()

End If

If conn.State = ConnectionState.Open Then

conn.Close()

End If

End Sub 'AppExit


Listing 13. AppExit method


Summary



In this article, you saw how to create a new database and database objects including tables, stored procedures, views and alter tables. You also saw how to delete these object using SQL statements.

2.3.08

E-COMPANY (CÔNG TY ĐIỆN TỬ) MÔ HÌNH PHÁT TRIỂN CNTT CHO DOANH NGHIỆP


Tìm hiểu thông tin cơ bản về doanh nghiệp Các bước đầu tư CNTT trong doanh nghiệp Khái quát về doanh nghiệp điện tử (DNĐT) Lộ trình chuyển đổi và xây dựng DNĐT Mức độ sẵn sàng của doanh nghiệp Các chương trình trong xây dựng e-Company Lộ trình xây dựng e-Company

Tài liệu quản trị mạng máy tính,mạng LAN, mạng WAN ...



Hiện nay trên thế giới có nhiều dịch vụ dành cho việc chuyển thông tin từ khu vực này sang khu vực khác nhằm liên kết các mạng LAN của các khu vực khác nhau lại. Để có được liên kết này người ta thường sử dụng các dịch vụ của các mạng diện rộng. Hiện nay trong khi giao thức truyền thông cơ bản của LAN là Ethernet, Token Ring thì giao thức dùng để tương nối các LAN thông thường dựa trên chuẩn TCP/IP. Ngày nay khi các dạng kết nối có xu hướng ngày càng đa dạng và phân tán cho nên các mạng WAN đang thiên về truyền theo đơn vị tập tin thay vì truyền một lần xử lý

Những giải pháp CNTT cho quản lý tiền mặt, kinh doanh tiền gửi.

Ông Apurva Jain - Giám đốc kinh doanh khu vực Châu Á Thái Bình Dương - CashTech. Presentation on Remittance & Cash Management. Banking Day 2006. Bank services is becoming the hub of distribution financial chain

download