1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu Use Variables and Functions in T-SQL pptx

4 549 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Use Variables and Functions in T-SQL
Thể loại How-to
Định dạng
Số trang 4
Dung lượng 17,17 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

6.2 Use Variables and Functions in T-SQL I understand that I can use parameters in my stored procedures, but how do I use variables and functions within T-SQL?. To achieve this, look at

Trang 1

6.2 Use Variables and Functions in T-SQL

I understand that I can use parameters in my stored procedures, but how do I use

variables and functions within T-SQL?

Technique

It is time to expand the coding you do using T-SQL In this book so far, you have pretty well been limited to single-line SELECT statements Now you will learn how to use variables and built-in functions To achieve this, look at the routine that will be created here:

DECLARE @Cust_Id nchar(5), @Order_Date datetime

SET @Cust_Id = 'ANTON'

SET @Order_Date = '11/27/1996'

SELECT OrderID, OrderDate, ShippedDate,

DateDiff(day, @Order_Date, ShippedDate) as Days_To_Ship

FROM Orders

WHERE CustomerID = @Cust_Id and OrderDate = @Order_Date

Declaring Local Variables in T-SQL

You can use variables in T-SQL much like you would in your other coding languages First, you must declare them To declare variables in T-SQL, you will use the DECLARE statement, the ampersand with the variable name, and the data type You can see an example of the variable declaration here, where nchar, with the length and datetime variables, is declared

DECLARE @Cust_Id nchar(5), @Order_Date datetime

Note

Besides the standard SQL Server data types, such as nchar, int, and datetime, you can also declare and create a Table datatype You will see

an example of this in How-To 6.8, found later in this chapter

After you have declared the variables, you need to initialize them before you can use them

Trang 2

Initialing Local Variables in T-SQL

To initialize the variables, you will use the SET command, shown in these two lines of code:

SET @Cust_Id = 'ANTON'

SET @Order_Date = '11/27/1996'

By setting the initial values, you are then ready to use the variables within the rest of your procedure, any way that you need them, again, by using the @varname syntax

Utilizing Built-In Functions

Within T-SQL, you can also use functions to perform some of the tasks needed, just as you do within Visual Basic Not all of the functions are the same, nor are there

necessarily as many For instance, instead of a Date() function, which is used in Visual Basic, in T-SQL, you use the GetDate() function Functions also will not necessarily return the same values or accept the same parameters

This How-To calls the DateDiff() function As with Visual Basic's DateDiff() function, this function takes two dates, and based on the interval requested, it returns the difference between the two To check out other functions that are available, you can look up the word function in the Books On-Line for SQL-SQL Server

Steps

Open and run the Visual Basic NET-Chapter 6 solution From the main page, click on the button with the caption How-To 6.2 When the form loads, you will see a SQL

statement display in a label, and a DataGrid displayed below (see Figure 6.3)

1 Create a Windows Form Then place the controls listed in Table 6.2 and seen in Figure 6.3 with the following properties set

Table 6.2 Control Property Settings for This How-To

Label Name lblSQLString Label Text Results

Trang 3

2 Add the code in Listing 6.2 to the Load event of the form (Double-click on the form to bring up the code.) Creating the T-SQL routine described in the

"Technique" section, this code then assigns the routine to the Text property of the Label called lblSQLString It then creates a data adapter using the string and fills the dtResults DataTable Last, the code assigns the data adapter as the data source for the dgResults data grid

Listing 6.5 frmHowTo6_2.vb: Storing the SQL Statement and Then

Executing

Private Sub frmHowTo6_2_Load(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles MyBase.Load

' Build the SQL String

Dim strSQL As String

strSQL = "DECLARE @Cust_Id nchar(5), @Order_Date datetime " & _ vbCrLf & vbCrLf

strSQL &= "SET @Cust_Id = 'ANTON'" & vbCrLf

strSQL &= "SET @Order_Date = '11/27/1996'" & vbCrLf & vbCrLf

strSQL &= "SELECT OrderID, OrderDate, ShippedDate, "

strSQL &= "DateDiff(day, @Order_Date, ShippedDate) as Days_To_Ship " strSQL &= "FROM Orders" & vbCrLf

strSQL &= "WHERE CustomerID = @Cust_Id and OrderDate =

@Order_Date"

' Store the SQL String

Me.lblSQLString.Text = strSQL

' Use the SQL String to build the data adapter and fill the data table

Dim odaResults As New OleDb.OleDbDataAdapter(Me.lblSQLString.Text, BuildCnnStr("(local)", "Northwind"))

Dim dtResults As New DataTable()

Try

odaResults.Fill(dtResults)

Catch excp As Exception

MessageBox.Show(excp.Message)

Exit Sub

End Try

Trang 4

' Assign the data table to the data grid's DataSource property

Me.dgResults.DataSource = dtResults

End Sub

Figure 6.3 The Days_To_Ship is derived from using the DateDiff function with the

OrderDate and ShippedDate

Comments

For the most part, you will use parameters when you are creating your T-SQL routines However, when you're creating multiple steps in your routines that are getting more complex, you'll use variables more often

Ngày đăng: 14/12/2013, 20:16

TỪ KHÓA LIÊN QUAN