Mudando propiedade Táboa no SQL Server
Arquivo en: Aloxamento , Programación 101 , SQL Server
Recentemente, tivo a infeliz caso dun servidor ser vivo configuración e utilizado por só un usuario que non se DBO. Ou o programador non coñezo ningún mellor ou ... ben ... era o idiota da aldea ... de calquera forma, entón ... a co código. Aquí está unha simple declaración T-SQL que vai buscar e percorrer todos os procedementos almacenados, táboas e Exposicións e actualiza-los para usar DBO (ou calquera outro usuario quere):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Declare @ tbl sysname Declare Cursor INSENSITIVE tblcur PARA sysobjects SELECT nome FROM sysobjects ( 'U' , 'V' , 'P' ) AND uid = user_id ( 'olddbuser' ) Xtype Where IN ('U', 'V', 'P' AND uid = user_id) ("olddbuser) OPEN tblcur 1 Mentres 1 = 1 Begin FETCH into tblcur @ tbl 0 IF @ @ <0 fetch_status Break 'olddbuser.' + @tbl SET @ tbl '= olddbuser.' + @ Tbl Exec sp_changeobjectowner @ tbl, 'DBO' END tblcur DEALLOCATE |
Patróns de Data - ¿Que todo programador debería saber
Arquivo en: Classic ASP , Programación 101 , SQL Server
Hai uns anos cando comece a programar miña primeira tarefa foi a de código dun sistema de intranet capaz de seguir as reunións e algúns funcionarios fixeron tarefas ao longo do día, en base a un calendario. Isto foi antes de saber que o poder de SQL Server 2000 (e agora 2005/2008) tiña e como era doado traballar dentro deses sistemas.
MS Access (que cambiou moito desde 1999) tiña un fallo. El sempre mantivo os formatos de data en dd / mm / aaaa (América é o "mundo" hahahahaha), para iso fixo o meu traballo cada vez máis difícil tentar xestione as datas nun momento Sur africano base (dd / mm / aaaa)
Loitei moito para entender o acto desavergonhado de que o MS Access masacrado insumos miña data, pero eu non podía axudar, pero creo que iso non pode ocorrer a todos os programadores!
Despois de moita dor no corazón e moitas noites sen durmir, finalmente atopei a bala de prata para o lobisomem que foi o MS Access (e outros servidores en todo o mundo rodando en axustes de fuso horario diferente)
aaaa-dd-MMM! Traducido en: 01-Xan-1999, por exemplo, pode introducir calquera data, co 100% de garantía que o seu sono garantido. Este formato de data universal ha traballar en calquera (si, leu! Calquera base de datos) coñecidos polo home e, aínda que os datos en bruto pode ser parecido 1999/09/02 na base de datos, el sempre ha inserir a data correcta en formato correcto na a base de datos, independentemente do fuso horario que o servidor está configurado en!
exampes Classic ASP de lectura fora de data é a seguinte:
1
| date ( ) ) & amp ; "-" & amp ; Left ( MonthName ( Month ( Date ( ) ) ) , 3 ) & amp ; "-" & amp ; Year ( Date ( ) ) Day (Date ()) & amp; "-" & amp; Esquerda (MonthName (Month (Date ())), 3) & amp; "-" & amp; Year (Date ()) |
SQL Server exemplo usaría DateName en vez de MonthName (que pode ser abreviado sen a esquerda () función que tiña para usar en ASP) e, por suposto, (data) = getdate () no SQL Server ![]()
Eu sempre recomendo a lectura para fóra da base de datos (cando é posible) con procedementos almacenados en formato correcto para comezar. Pero cómpre a decidir como usar esa xoia do coñecemento que eu só xogado en ti. E se está lendo este pensamento "Pero eu xa sabía!", Entón pense de novo. Desafortunadamente, en 2009, aínda hai moito algúns programadores incapaces de comprender conceptos simples, como fusos horarios e manipulación de data.
Lembre nenos. Cometer erros cando aínda está de novo no xogo é unha cousa. Brandi un currículo experiencia (currículo), de 3 anos +, e aínda está facendo estes erros é simplemente mal ... escolleu un campo onde tes que evolucionar e buscar respostas constantemente, non estagna ... Vou assombra seus soños se fai ![]()













































