لقد وجدته من خلال البحث عن معلومات على الإنترنت، لكنني وجدت بعض المشكلات أثناء التصحيح، وبعد بعض التعديلات، لا تزال هناك بعض المشكلات، ولكن يمكن استخدامه للاستخدام العام. لم يتم أخذ مشكلة نوع البيانات والفرق بين SQL Server والوصول في الاعتبار، وسأقوم بتحسينها عندما يكون لدي الوقت في المستقبل. إذا قام أي شخص بتحسينه، من فضلك أرسل لي نسخة.
انسخ الكود كما يلي:<%
class SQLString
'************************************
' تعريف متغير
' ************************************
'sTableName ---- اسم الجدول
'iSQLType --- - نوع عبارة SQL: 0-إضافة، 1-تحديث، 2-حذف، 3-استعلام أين
---- condition'sOrder
---- طريقة الفرز
SQL ---- قيمة
sTableName الخاص، iSQLType، sWhere، sOrder ، سSQL
'************************************
'تهيئة/نهاية الفئة
'************************************
Private Sub Class_Initialize()
sTableName=
iSQLType =0
sWhere=
sOrder=
sSQL=
End Sub
Private Sub Class_Terminate()
End Sub
'********************************* ** **
'السمة
' ***********************************
'قم بتعيين السمة
العامة لاسم الجدول الخاصية TableName(value)
sTableName=value
End Property
'ضبط الشروط
للملكية العامة Let Where(value)
sWhere=value
End Property
'قم بتعيين طريقة الفرز
للملكية العامة دع الطلب (القيمة)
sOrder=قيمة
End Property
'قم بتعيين نوع بيان الاستعلام
الخاصية العامة دع SQLType(value)
iSQLType=value
حدد الحالة iSQLType
case 0
sSQL=insert into {&*#}0 ( {& *#}1) القيم ({&*#}2)
الحالة 1
sSQL=update {&*#}0 مجموعة {&*#}1={&*#}2
الحالة 2
sSQL=delete من {&*#}0
الحالة 3
sSQL=select {&*#}1 من {&*#}0
end حدد
خاصية النهاية
'********************* ****************
'وظيفة
'****************************** * ****
'أضف حقل (اسم الحقل، قيمة الحقل)
Public Sub AddField(sFieldName,sValue)
حدد الحالة iSQLType
case 0
sSQL=replace(sSQL,{&*#}1,sFieldName & ,{&*#}1 )
sSQL=replace(sSQL,{&*#}2, & sValue & ,{&*#}2)
الحالة 1
sSQL=replace(sSQL,{&*#}1,sFieldName)
sSQL=replace(sSQL,{&* #}2، & sValue &،{&*#}1={&*#}2)
الحالة 3
sSQL=replace(sSQL,{&*#}1,sFieldName & ,{&*#}1)
End Select
End Sub
'وظيفة معدلة ترجع قيمة سلسلة
' إرجاع بيان SQL
الوظيفة العامة ReturnSQL()
sSQL=replace(sSQL , {&*#}0,sTableName)
حدد الحالة iSQLType
الحالة 0
sSQL=replace(sSQL,,{&*#}1,)
sSQL=replace(sSQL,,{&*#}2,)
الحالة 1
sSQL=replace(sSQL,,{&*#}1={&*#}2,)
الحالة 3
sSQL=replace(sSQL,,{& *#}1,)
end حدد
if sWhere<> وiSQLType<>0 ثم
sSQL=sSQL & Where & sWhere
end إذا
كان sOrder<> وiSQLType<>0 ثم
sSQL=sSQL & order by & sOrder
end if
ReturnSQL=sSQL
End Function
'إرجاع بيان SQL
الوظيفة العامة ReturnSQL1()
sSQL=replace(sSQL,{&*#}0,sTableName)
حدد الحالة iSQLType
case 0
sSQL=replace(sSQL, ،{&*#}1،)
sSQL=replace(sSQL،،{&*#}2،)
الحالة 1
sSQL=replace(sSQL,,{&*#}1={&*#}2,)
الحالة 3
sSQL=replace(sSQL,,{&*#}1,)
end حدد
if sWhere<> وiSQLType<>0 ثم
sSQL=sSQL & Where & sOrder
end إذا
كان sOrder<> وiSQLType<>0 ثم
sSQL=sSQL & Order by & sOrder
end if
ReturnSQL=sSQL
End Function
"بيان واضح
Public Sub Clear()
sTableName=
iSQLType=0
sWhere=
sOrder=
sSQL=
End Sub
End class
%>
مثال الاتصال:
<%
set a =new SQLString 'إنشاء كائن فئة
a.TableName= message' تعيين اسم الجدول للرسالة
'a.where= issend =9
'a.order= issend desc
a.SQLType=0 'قم بتعيين نوع الاستعلام لإضافة سجلات
a.AddField incept، '2'
a.AddField sender ، '%3%'
a.AddField title ، #&now&#
a.AddField sender ، 5
a.AddField content ، 6
a.AddField sendtime ، 7
a.AddField flag، 8
a.AddField issend ، 9
Response. اكتب a.ReturnSQl
set a=nothing
%>
<%
set a =new SQLString 'إنشاء كائن فئة
a.TableName= message 'تعيين رسالة اسم الجدول
'a.where= issend =
9'a.order= issend desc
a.SQLType=0 'تعيين نوع الاستعلام لإضافة سجلات
a.AddField incept،' 2'
أ.AddField المرسل ، '%3%'
أ.عنوان AddField ، #&الآن&#
a.AddField المرسل ، 5
أ.محتوى AddField ، 6
a.AddField sendtime، 7
a.AddField flag، 8
a.AddField issend، 9
Response.Write a.ReturnSQl
set a=nothing
%>
<%
set a =new SQLString 'إنشاء كائن فئة
a.TableName= message 'تعيين اسم الجدول بالنسبة للرسالة
'a.where= issend =
9'a.order= issend desc
a.SQLType=0 'قم بتعيين نوع الاستعلام لإضافة السجلات
أ.AddField incept، '2'
a.AddField sender، '%3%'
a.AddField title، #&now&#
a.AddField sender، 5
a.AddField content، 6
a.AddField sendtime ، 7
علامة a.AddField، 8
a.AddField issend، 9
Response.Write a.ReturnSQl
set أ=لا شيء
%>