Sé que en la mayoría de los casos es más útil aprender tecnología/lenguaje más complicado y luego uno más fácil que viceversa.
Pero, en realidad, el tiempo para realizar tareas universitarias es limitado. Si primero aprendo LINQ, entonces vaya por SQL, ¿me sería difícil usar y aprender SQL?
EDIT
La tarea que tengo que hacer es trabajar con la base de datos y obtener algunos datos de ella, por lo que la pregunta es casi de LINQ a SQL.¿Es una buena idea aprender primero LINQ, luego SQL?
Respuesta
Es una mala idea.
Y si las universidades de hoy te enseñan LINQ en lugar de darte las bases para desarrollar tu conocimiento, solo puedo sentir pena y lástima por sus alumnos.
El tiempo es siempre limitado. No lo desperdicie en cosas que están sujetas a cambios constantes.
SQL estará allí mañana, LINQ .... bueno, quién sabe.
SQL es aplicable en cualquier parte, LINQ solo en .NET world.
Ya sea LINQ o algo más, será fácil "aprender" después. Cuando tenga el conocimiento de SQL, solo será cuestión de horas/días/semanas, apenas más.
¿Cómo es esto ofensivo? ¡Esto es verdad! Soy fanático de LINQ y ya ha habido mucha discusión sobre las entidades y el futuro de LINQ. El conocimiento general de SQL irá más allá. – mmcdole
ofensivo? ¡¡¡¡¡venga!!!!! – inspite
las universidades no nos enseñan LINQ, quieren que hagamos el trabajo y eso es todo. entonces, la tecnología que seleccionamos para hacer esto tiene que ver con nuestro conocimiento, elección y preferencia. LINQ es solo mi alternativa para no profundizar en SQL – chester89
Bueno, las 2 cosas son muy diferentes. LINQ (en el sentido puro) no está realmente relacionado con bases de datos en absoluto - se puede usar muy felizmente en objetos de memoria o en servicios web, etc.
Si está interesado principalmente en escribir mejor .NET code, luego aprende LINQ - pero apúntalo correctamente - por ejemplo, toma C# in Depth, que lo cubre muy bien en los últimos capítulos.
Si quiere saber sobre bases de datos, entonces seguro: aprenda SQL (como TSQL) - pero entienda las diferencias. Las bases de datos son buenas si necesita escribir software empresarial, pero no necesariamente si solo desea realizar tareas simples.
edición re edición en la pregunta
Si se acaba de entrar datos simples dentro y fuera de la base de datos, entonces es probable que no necesita saber mucho acerca de SQL. Simplemente use LINQ-to-SQL (o cualquier herramienta) y deje que las herramientas ORM se preocupen por ello.
SQL es un estándar, conoce el estándar.
Más precisamente:
aprenden la teoría de base de datos
aprender álgebra CODD
luego recoger una "base de datos común", hacer algunos tutoriales sobre el mismo, ...
Me gusta mucho PostgreSQL tutorial
no conozco las diferencias entre SQL92, SQL99, SQL2003, SQL20008 ... pero para un principiante no creo que realmente importe – chburd
Primero aprenda SQL, luego LINQ.
De esta manera entenderá cómo LINQ-to-SQL está trabajando detrás de escena, pero también sabrá lo suficiente como para poder hacer frente cuando LINQ no puede hacer lo que necesita.
Presento que no se puede usar efectivamente LINQ a menos que tenga conocimiento de SQL. Si usted no comprende, como mínimo, la siguiente, no se puede consultar de manera efectiva una base de datos en cualquier forma:
select
insert
delete
update
joins
group by
boolean algebra
relational theory
set theory
aprendizaje SQL le dará los conceptos que necesita, incluso si utiliza LINQ más tarde.
sql. Sin embargo, podría jugar con linq pad por un tiempo - es un software gratuito y darse cuenta de que LINQ es un buen híbrido entre SQL y C#
- 1. Linq, es select(). SingleorDefault() ¿una mala idea?
- 2. sqlite e hibernate - es una buena idea?
- 3. ¿Es una mala idea saltar a LINQ to SQL ahora?
- 4. ¿Campos multivalorados una buena idea?
- 5. internacionalización con nibs. ¿Es realmente una buena idea?
- 6. ¿Es una buena idea devolver "const char *" de una función?
- 7. ¿Es una buena idea usar una función CreateUUID() como sal?
- 8. Implementar una clase "LazyProperty": ¿es esta una buena idea?
- 9. ¿Es una buena idea una clase de "preferencias maestras"?
- 10. Recursos para aprender LINQ?
- 11. activerecord como modelo, ¿es esta una buena idea?
- 12. ¿Buena muestra sofisticada de linq a sql?
- 13. ¿Cuándo no es una buena idea pasar por referencia?
- 14. ¿Cuál es una buena primera implementación para aprender a aprender máquinas?
- 15. ¿Cuál es una buena fuente para aprender sobre QEMU?
- 16. ¿Cuándo es una buena idea la herencia virtual?
- 17. ¿Es una buena idea comparar double.MaxValue para la igualdad?
- 18. ¿Es una buena idea colapsar viejas migraciones de rieles?
- 19. REST Servicios web usando MVC, ¿es una buena idea?
- 20. ¿Es una buena idea ejecutar `... par.map (` en listas grandes directamente?
- 21. ¿Es una buena idea poner db/schema.rb en .gitignore list ??
- 22. ¿Puede un minificador hacer esto? (.... y ¿es una buena idea?)
- 23. ¿Es una buena idea hornear procesos en PHP/Apache?
- 24. ¿Es una buena idea preferir NSNumberFormatterBehavior10_4 sobre NSNumberFormatterBehaviorDefault?
- 25. Django: ¿Es una buena idea generar JS dinámicamente?
- 26. ¿Es correcto (VERDADERO) una buena idea en C?
- 27. Es una buena idea guardar gráficos en MySQL?
- 28. ¿Es una buena idea peinar la etiqueta del cuerpo?
- 29. Cookies de sesión firmadas. ¿Una buena idea?
- 30. ¿Cuándo se usa __call__ una buena idea?
Re la edición - entonces diga ;-p –
el punto es que no me quiero quedar con solo C# y plataforma .NET por el resto de mi vida, es muy probable que esto sea lo que haré para vivir, pero eso no es todo lo que quiero saber – chester89
Bueno, SQL (en variantes como TSQL , etc.) es verdaderamente omnipresente. LINQ es específico de .NET. Pero debe decidir qué es importante a corto plazo (para aprobar el curso) y a largo plazo (carrera). Pueden ser diferentes, pero ¿cuál es más inmediato? –