Tager nok lige lidt tid, 800k rows den skal igennem .... :-) UPDATE ForumPosts SET [Text] = (SELECT substring(Text, 0, charindex('[tag]',[Text])) FROM ForumPosts AS FP WHERE ForumPosts.PostID = FP.PostID) WHERE charindex('[tag]', Text) > 0
Ja ... ved det ... og det var så det jeg vidste om det ... hvis du eventuelt har noget læse stof lige ved ærmet omkring det ville det være helt perfekt ... men da jeg ikke skal mere end lige den ene SQL, er det vist lidt spild af tid ... men måske der kunne laves andre smarte ting ....
Er nemlig ved at flyttet et rimelig stort site over i ASP.NET, så hvis man kunne lave en process af data allerede på SQL via C# kunne der måske spares tid og kræfter på serveren ... som så bliver sendt tilbage som en klasse kunne det jo være smart ...
CREATE ASSEMBLY MyUDF FROM 'C:\E\MyUDF.dll' WITH PERMISSION_SET = SAFE GO CREATE FUNCTION MD5(@val NVARCHAR(1000)) RETURNS NVARCHAR(50) AS EXTERNAL NAME MyUDF.[E.Hash].MD5Calc GO
using System; using System.Data.Sql; using System.Data.SqlTypes; using System.Data.SqlClient; using System.Text; using System.Security.Cryptography;
using Microsoft.SqlServer.Server;
namespace E { public class Hash { private static readonly Encoding utf8 = new UTF8Encoding(); private static readonly MD5 md5 = new MD5CryptoServiceProvider(); [SqlFunction] public static SqlString MD5Calc(string s) { byte[] binres = md5.ComputeHash(utf8.GetBytes(s)); StringBuilder res = new StringBuilder(""); for(int i = 0; i < binres.Length; i++) { res.Append(String.Format("{0:x2}", binres[i])); } return res.ToString(); } } }
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.