• پایان فعالیت بخشهای انجمن: امکان ایجاد موضوع یا نوشته جدید برای عموم کاربران غیرفعال شده است

جستجو از sql

far715

کاربر تازه وارد
تاریخ عضویت
5 نوامبر 2005
نوشته‌ها
25
لایک‌ها
0
وقتی که از طریق asp به sql وصل میشم و میخوام یک فیلدی رو در sql جستجو کنم که فارسی هست پیدا نمیکنه

در ضمن من از asp یک stored procedure را اجرا میکنم و فکر کنم باید از trim استفاده کنم اما اینکه در sql چطوری

از این استفاده کنم رو بلد نیستم من متن stored procedure خودم رو اینجا گذاشتم

اگه ممکنه بگین چه تغییراتی باید روی این انجام بدم :) مرسی


CREATE PROCEDURE docu
@u char(10
@p char(10)
AS
select company,percompany,modir_name,telphone,address
from _document
where sal=@u and mah= @p
GO
 

mazoolagh

Registered User
تاریخ عضویت
10 آپریل 2004
نوشته‌ها
2,938
لایک‌ها
7
خوب ظاهرا که فیلدهای فارسی باید یونیکد ذخیره بشن یعنی نوعشون nchar هست
ضمنا حواست به کدهای حروف {ی} و {ک} هم باشه
 

far715

کاربر تازه وارد
تاریخ عضویت
5 نوامبر 2005
نوشته‌ها
25
لایک‌ها
0
خوب آخه برنامه که دست من نیست :eek: اون قبلا نوشته شده حالا من میخوام تحت وب بکنمش با trim چطوری میتونم حلش کنم؟؟؟؟؟؟:( :(
 

mazoolagh

Registered User
تاریخ عضویت
10 آپریل 2004
نوشته‌ها
2,938
لایک‌ها
7
آیا این stored procedure شما اگر در خود query analyzer اجرا بشه درست کار میکنه؟
 

far715

کاربر تازه وارد
تاریخ عضویت
5 نوامبر 2005
نوشته‌ها
25
لایک‌ها
0
بله کاملا درست کار میکنه فقط وقتی دنبال کلمات فارسی میگرده نمیتونه پیداشون کنه:(
 

mazoolagh

Registered User
تاریخ عضویت
10 آپریل 2004
نوشته‌ها
2,938
لایک‌ها
7
پس کار نمیکنه دیگه!
این فیلدهای فارسی نوعش چیه؟ باید nchar باشه.
 

far715

کاربر تازه وارد
تاریخ عضویت
5 نوامبر 2005
نوشته‌ها
25
لایک‌ها
0
نوع اين فيلد ها char هست توي sql هم جواب ميده ولي از صفحه asp نميتونه پيدا كنه البته وقتي عدد ميدم مثلا 20 راحت پيدا ميكنه ولي وقتي كلمه هست پيدا نميكنه :( :( :( :( :( :( :( :( :( :( :( :(
 

mazoolagh

Registered User
تاریخ عضویت
10 آپریل 2004
نوشته‌ها
2,938
لایک‌ها
7
یا چند رکورد از دیتابیست رو بریز توی یک جدول از یک دیتابیس جدید و بعد اون دیتابیس رو بفرست تا ببینم چجوریه

یا صبر کن یک نفر آدم وارد پیدا بشه

بنظر من فیلد فارسی باید nchar باشه نه char
 

far715

کاربر تازه وارد
تاریخ عضویت
5 نوامبر 2005
نوشته‌ها
25
لایک‌ها
0
[db.jpg نمیدونم چطوری یه تصویر بزارم اینجا:)
 

far715

کاربر تازه وارد
تاریخ عضویت
5 نوامبر 2005
نوشته‌ها
25
لایک‌ها
0
نه مثه اینکه درست گذاشتم اینجا :) :blush: :) :)
 

mazoolagh

Registered User
تاریخ عضویت
10 آپریل 2004
نوشته‌ها
2,938
لایک‌ها
7
یک دیتابیس درست کن
همون رکوردهای نمونه رو بریز توی یک جدول اون دیتابیس
دیتابیس رو detachش کن
بعد فایلهاش رو zip و ایمیلش کن به mazoolagh at yahoo dot com
 

far715

کاربر تازه وارد
تاریخ عضویت
5 نوامبر 2005
نوشته‌ها
25
لایک‌ها
0
ok میفرستم

در ضمن خیلی ممنونم
:) :) :)
 

far715

کاربر تازه وارد
تاریخ عضویت
5 نوامبر 2005
نوشته‌ها
25
لایک‌ها
0
از اون روز دارم تلاش میکنم بفرستم ولی نمی شه البته با اینکه فقط 3 تا رکوذد داره اما 9m هست به هر حال باز تلاش میکنم شاید بتونم بفرستمش :wacko: :wacko:
 

inetpub66

کاربر تازه وارد
تاریخ عضویت
30 ژوئن 2004
نوشته‌ها
1
لایک‌ها
0
محل سکونت
Tehran
به نقل از far715 :
وقتی که از طریق asp به sql وصل میشم و میخوام یک فیلدی رو در sql جستجو کنم که فارسی هست پیدا نمیکنه

در ضمن من از asp یک stored procedure را اجرا میکنم و فکر کنم باید از trim استفاده کنم اما اینکه در sql چطوری

از این استفاده کنم رو بلد نیستم من متن stored procedure خودم رو اینجا گذاشتم

اگه ممکنه بگین چه تغییراتی باید روی این انجام بدم :) مرسی


CREATE PROCEDURE docu
@u char(10
@p char(10)
AS
select company,percompany,modir_name,telphone,address
from _document
where sal=@u and mah= @p
GO

کد پیج تمام صفحه هاتو یونیکد کن:session.codepage=65001:)
 

mazoolagh

Registered User
تاریخ عضویت
10 آپریل 2004
نوشته‌ها
2,938
لایک‌ها
7
به نقل از far715 :
از اون روز دارم تلاش میکنم بفرستم ولی نمی شه البته با اینکه فقط 3 تا رکوذد داره اما 9m هست به هر حال باز تلاش میکنم شاید بتونم بفرستمش :wacko: :wacko:

فایل رو گرفتم - شما نباید backup میگرفتی یا حداقل باید قبلش shrink میکردی. باید یک دیتابیس جدید درست میکردی. بعد table رو توش کپی میکردی و اون دیتابیس رو detach میکردی و هر دو فایل mdf - ldf رو zip میکردی بعد میفرستادی. حالا مهم نیست:D

همونطور که گفتم اطلاعات فارسی باید nchar باشن ولی اینها char هست. برای حروف فارسی از کدهای زیر 256 استفاده شده یعنی این اطلاعات از foxpro یا paradox به sql منتقل شده.

شما 2 راه داری:
1- دیتابیست رو اصلاح کنی (راه درست)
2- صفحات وبت رو برای این دیتابیس طراحی کن (بسیار نادرست)
 
بالا