سلام؛ اگر بخواهیم از سشن استفاده نکنیم، برای نگهداری اطلاعات کسی که لاگین کرده چه راهی وجود داره؟ مثلاً UserId یا LoginId که با اون بشه به UserId رسید.
۹ سال و ۱۰ ماه قبل، سهشنبه ۱۱ آذر ۱۳۹۳، ساعت ۱۴:۳۰
سلام؛ اگر بخواهیم از سشن استفاده نکنیم، برای نگهداری اطلاعات کسی که لاگین کرده چه راهی وجود داره؟ مثلاً UserId یا LoginId که با اون بشه به UserId رسید.
CREATE PROCEDURE [dbo].[spr_Admin_Replace_Ye_Ke_InAllTables] AS BEGIN BEGIN TRAN --ی--%u06CC --ی--%u064A --ک--%u06A9 --ک--%u0643 DECLARE @Ye_Farsi NCHAR(1), @Ye_Arabi NCHAR(1), @Ke_Farsi NCHAR(1), @Ke_Arabi NCHAR(1) SET @Ye_Farsi = NCHAR(0X06CC) SET @Ye_Arabi = NCHAR(0X064A) SET @Ke_Farsi = NCHAR(0X06A9) SET @Ke_Arabi = NCHAR(0X0643) --SELECT @Ye_Farsi, UNICODE(@Ye_Farsi) AS Ye_Farsi_Code, @Ye_Arabi, UNICODE(@Ye_Arabi) AS Ye_Arabi_Code,@Ke_Farsi, UNICODE(@Ke_Farsi) AS Ke_Farsi_Code, @Ke_Arabi, UNICODE(@Ke_Arabi) AS Ke_Arabi_Code --SELECT * FROM sys.types DECLARE xcur CURSOR FOR -- a cursor for string columns SELECT sys.tables.name AS TableName, sys.columns.name AS ColumnName FROM sys.tables INNER JOIN sys.columns ON sys.tables.object_id = sys.columns.object_id WHERE sys.columns.system_type_id IN (35, 99, 167, 175, 231, 239) OPEN xcur DECLARE @SqlString nvarchar(1000), @TName nvarchar(255), @CName nvarchar(255), @ret int FETCH NEXT FROM xcur INTO @TName, @CName WHILE @@FETCH_STATUS = 0 BEGIN BEGIN TRY SET @SqlString = N'UPDATE ' + @TName + ' SET ' + @CName + ' = REPLACE( REPLACE(' + @CName + ',''' + @Ye_Farsi + ''',''' + @Ye_Arabi + ''') ,''' + @Ke_Farsi + ''',''' + @Ke_Arabi + ''')'; EXEC @ret = sp_executesql @SqlString PRINT @ret END TRY BEGIN CATCH PRINT @SqlString PRINT ERROR_MESSAGE() END CATCH FETCH NEXT FROM xcur INTO @TName, @CName END CLOSE xcur DEALLOCATE xcur ROLLBACK TRAN END
public class YeKeLetters { public static char Ye_Farsi = '\x06CC'; // ی %u06CC public static char Ye_Arabi = '\x064A'; // ی %u064A public static char Ke_Farsi = '\x06A9'; // ک %u06A9 public static char Ke_Arabi = '\x0643'; // ک %u0643 }
WITH RCTE AS ( SELECT TOP (100) ROW_NUMBER() OVER (ORDER BY Invoice.InsertDate ASC) AS RowNumber, Invoice.ID, Invoice.PreInvoiceNo, Invoice.InvoiceNo, Invoice.IssueDate, Invoice.CustomerID, ... FROM Invoice WHERE Invoice.HistorySequence = 1 ) SELECT DISTINCT RCTE.ID, RCTE.PreInvoiceNo, RCTE.InvoiceNo, (dbo.fnc_Calendar_Gregorian_to_Persian(RCTE.IssueDate) + 'T' + CONVERT(CHAR(8), RCTE.IssueDate, 14)) AS IssueDate, RCTE.CustomerID, Customer.NameEn AS CustomerNameEn, Customer.NameFa AS CustomerNameFa, FROM RCTE INNER JOIN Customer ON RCTE.CustomerID = Customer.ID WHERE RowNumber BETWEEN @StartFrom AND (@RowsCount + @StartFrom - 1)