Subscribe to this list via RSS Blog posts tagged in Databases
"Accessing Databases with Delphi and FireDAC" webinar, Weds, March 22nd On Wednesday, March 22nd, 11am CET, I have presented one hour, demo-oriented, developer webinar about FireDAC. FireDAC is the best database access library available in Delphi, C++Builder and RAD Studio! During the presentation the focus was on new and improved FireDAC features in upcoming RAD Studio 10.2 Tokyo release. Different database access framework libraries available in RAD Studio were discussed, working with Data Explorer, configuring database connection and working...
Свобода движения. Жить танцуя! Фраза в заголовке взята из другой темы, но именно это ощущение возникает, когда узнаешь, как быстро и без усилий можно перемещать данные с помощью технологий, заложенных в FireDAC!  И я думаю, что совсем не случайно мои коллеги из Японии и Бразилии также решили написать в своих блогах на эту тему и поделиться настроением. Потребовалось решить простую задачу - подготовленные заранее строки для справочника необходимо загрузить в рабочую базу данных. Одна "закавыка" - "рабочей" базой в одном проекте является  коллекция в MongoDB, в другом - БД InterBase XE7, утилиты которого не слишком удобны для работы с данными в формате CSV (данные с разделителями - запятыми). Откроем Delphi, и создадим новый VCL-проект:  File->New->VCL forms Application-Delphi
Demystifying Macros with ER/Studio In the webinar, Demystifying Macros with ER/Studio, Embarcadero Software Consultant Stanley Chan demonstrated how macros work in ER/Studio. He showed how to use the built-in macros and also shared some custom macros during the session. If you missed the live presentation, you can watch it on demand. There were a lot of great questions during the session, some of which Stan didn’t have time to answer live. So he has provided responses to several of those for this blog. Q: In the color-coding de...
Embrace the Future of Data Architecture: Make the Switch to ER/Studio Sometimes you need to face the inevitable: the tool selected years ago is not the one you need for the future. Have you been struggling with complicated modeling tasks or outdated tools? Are your data models getting too big to handle? We’ve heard from a lot of customers recently who have been frustrated with their old data modeling tools, for multiple reasons such as: Lack of functionality Lack of support Lack of a future roadmap Embarcadero is committed to enabling our users to adapt to...

Posted by on in Blogs
Ad-hoc SQL/POCO Queries in Entity Framework 4.0 Since version 4.0, the Entity Framework has had the ability to query un-mapped data and project it onto POCOs using ad-hoc SQL. Here, for example, is how we check the current SQL Server version: internal class SqlVersionInfo { public string Edition { get; set; } public string ProductLevel { get; set; } public string ProductVersion { get; set; } } private static SqlVersionInfo GetSqlServerVersion(ObjectContext conte...

Posted by on in Blogs
Sometimes, SELECT Really Is Broken We got a bug report from a customer the other day; a certain query in one of our web services was giving the following error: A column has been specified more than once in the order by list. Columns in the order by list must be unique. Seems clear enough, except that There was no duplication in the ORDER BY. Our DBA discovered that the "problem" reference was [Project2].[C5] ASC, which is an alias, not a real DB column name. It certainly appeared only once, but removing it made the error ...

Posted by on in Blogs
In LINQ, Don't Use Count() When You Mean Any() If you have a list, array, or query in a C#/LINQ application and need to check and see if the list is empty, the correct way to do this is to use the Any() extension method: if (q.Any()) { Similarly, you can check to see if any elements in the list meet a certain condition: if (q.Any(i => i.IsSpecial)) { If the query provider is something like LINQ to Entities, this will be translated into fairly efficient SQL using EXISTS. For some reason, I see a lot of people write this co...
Don't Depend Upon the ASP.NET Membership Tables One very popular option for implementing user security in ASP.NET is to use Forms Authentication with the SQL Server membership provider. This provider creates several database tables to store user-related information, as well as a number stored procedures. From time to time, a developer will attempt to add the ASP.NET Membership/Forms Authentication tables to their Entity Framework model (or LINQ to SQL, NHibernate, etc.) model. Before doing this, they will often have created referential con...

Posted by on in Blogs
Entity Framework Models and Source Control As you're probably aware, an Entity Framework model is stored in a single XML file, with the extension EDMX. Developers occasionally ask if this means that two people cannot work on the entity model concurrently. My answer to this is, "It depends." But I can give you some tips to make it easier. Obviously, if you use a source control tool which locks files on check out, then working concurrently on just about anything will be impossible. So I'm going to presume that your source control tool s...

Posted by on in Blogs
Static Analysis and Generated Code In recent months, I've been thinking about the problem of static analysis in generated code. Static analysis means using tools like FxCop and NDepend (for .NET apps) lint (for C) and CodeHealer (for Delphi) to find potential problems in your source code. Generated code is code written not by a human being, but by a tool, such as generated classes for a Entity Framework or LINQ to SQL model, an import for a COM type, or code created by a form generator. Static analysis is intended to find code w...

Check out more tips and tricks in this development video: