PDA

View Full Version : یه سوال در مورد وارد کردن اطلاعات فارسی و stored procedure



white fox
سه شنبه 20 دی 1384, 19:05 عصر
با سلام خدمت دوستان عزیز
من میدونم برای وارد کردن پیغام های فارسی در فیلدهای sqlخودمون باید فیلدو از نوع nvarchar یا هر نوع فیلدی که با n شروع میشه انتخاب کرد و موقع نوشتن دستور insert باید قبل از هر مقدار یک N قرار بدیم.
حالا من میخوام این مقدار دادن یعنی دستور insert رو در stored procedure قرار بدم syntax این برنامه چجوری باید باشه ؟ چون وقتی پارامتر تعریف میکنیم و پارامتر رو بجای مقدار مورد نظر قرار میدیم دیگه نمیشه از '' استفاده کرد
ممنون از کمک پیشاپیش شما

Omid Rekabsaz
چهارشنبه 21 دی 1384, 19:35 عصر
DataType پارامتر خود را nvarchar در نظر بگیرید...

AminSobati
چهارشنبه 21 دی 1384, 23:42 عصر
CREATE TABLE T1(
Col1 NVARCHAR(100),
Col2 NVARCHAR(100)
)
GO

CREATE PROC T1_Insert
@P1 NVARCHAR(100),
@P2 NVARCHAR(100)
AS
INSERT T1 VALUES (@P1, @P2)
Go

EXEC T1_Insert N'مقدار اول', N'مقدار دوم'

SELECT * FROM T1

white fox
پنج شنبه 22 دی 1384, 07:07 صبح
آقی ثباتی..ممنون از راهنماییتون
اما من از این Stored procedure میخوام در برنامم که با VB.NET نوشتم استفاده کنم اونجا فقط میشه به پارامتر ارسالی فقط مقدار فرستاد نمیشه از N استفاده کرد

AminSobati
پنج شنبه 22 دی 1384, 12:26 عصر
دوستمون در پست قبلی اشاره کردند، باید nvarchar بگیرید، یعنی N لازم نیست:


Dim x As New SqlClient.SqlParameter
x.DbType = SqlDbType.NVarChar
x.Size = 1

rashidi zadeh
سه شنبه 26 اردیبهشت 1385, 07:20 صبح
مشکل من چیز دیگه ای بود ولی با همین کد حل شد . (میخواستم تو #C کد بنویسم)
خیلی ممنون:قلب:

bahman.net
شنبه 30 اردیبهشت 1385, 01:01 صبح
دستتون درد نکنه مشکل من هم حل شد