 | A community of more than 1,600,000 database professionals and growing |
| Featured ContentsFeatured Script |
| Why Object Databases will always be Tomorrow's Technology This editorial was originally published on Jun 17, 2009. It is being re-run as Steve is away on holiday. For many years now we always seem to have been on the verge of the revolution in object databases, without it ever quite transpiring. No-one should be holding their breath on the disappearance of the relational database. At the same time, the object database issue will never quite go away, due to the fervent desire of some developers to avoid using relational databases unless they really have to. This is a manifestation of the YAGNI (You Ain't Gonna Need It) principle that emerged from the bowels of the Extreme Programming movement. It refers to the idea that you should only add a feature if there is an immediate need for it, not because you can predict a future need for it. Some advocates of Domain Driven Design (DDD) apply this principle to the relational database. DDD adopts a silo-based approach focussed solely on the business domain that a particular application represents and tries to implement an entity model that directly reflects what the business sees, rather than some 'compromised' version of this, imposed by the constraints of working in harmony with the underlying relational database. Unfortunately, however warm and cozy it feels within the realm of their pure business entities, they know that the light at the end of the tunnel is the headlamp of the train that is the relational data model to which they will have to meld their entities. The knowledge of the impending impact is ever-present and they wish to avert it, or at least lessen its impact. After all, why does one need a huge relational database engine to "persist" the data required to guide users through their application? Object databases are becoming ever more powerful, they now work with stored procedures to keep DBAs happy and, of course, they fit far more readily into the world of their entity business models. Surely, the majority of their application processes could easily be driven by an object-oriented database, resorting to a relational database only to store that data required for business reporting? This is "relational database YAGNI". However, it is proving to be the proverbial itch that cannot be scratched. Despite the understandable allure of object databases, they have remained resolutely out of reach of the mainstream. Why is this? After all, it has found a place in a few industries, such as telecoms, and the largest database underpins the Stanford linear accelerator system, and it's an object database, so there seems to be no issue with scalability. The problem is fundamental. Relational databases strongly reflect the inherent nature of the business and accounting applications that we have been developing over centuries. A ledger is essentially a database table. There is a strong, probably unbreakable, connection between the world of commerce and the relational database. It is also no accident that the most widely deployed database engine in the world, SQLite, is a relational one, and powers the likes of the iPod, FireFox3, Nokia's Symbian platform and several others. The data needed to drive such applications and platforms is essentially relational in nature, and needs to be subject to SQL-style data definition and manipulation. It is for this reason that object databases are destined to be always "next year's technology". Cheers, Tony Davis (Guest editor) Tony Davis from SQLServerCentral.comJoin the debate, and respond to today's editorial on the forums |
|
| ADVERTISEMENT |  | How can you help your team write better, shareable SQL faster? Find out by discovering 15 Super SQL Tips from Microsoft MVPs and other SQL Server experts. Using SQL Prompt to write, refactor, and share SQL, they show how it strips away the repetition of coding and standardizes it everywhere. View the tips and download a free trial. |
|
|
|
| |
 | Additional Articles from Database Journal As the demand for data analytics grows so does the need for a technology or platform to process large amounts of different types of data in timely manner. Azure SQL Data Warehouse is a new enterprise-class, elastic petabyte-scale, data warehouse service that can scale according to organizational demands in just a few minutes. Read on to learn more about this data warehouse-as-a-service offering from Microsoft. More » |
 | The Database Avenger from SQLServerCentral Blogs T-SQL Tuesday is a monthly event where SQL Server bloggers write a post based on a subject chosen by the... More » |
 | Tim Mitchell from SQLServerCentral Blogs In the last post in my ongoing series about ETL best practices, I discussed the importance of error handling in ETL... More » |
|
|
| | Today's Question (by Steve Jones): I have a SQL Server 2016 instance and want to use BULK INSERT to load data. What file types can I import? Note that native refers to the native binary representation used by bcp. Character refers to the character formatting produced by bcp. |
Think you know the answer? Click here, and find out if you are right.
We keep track of your score to give you bragging rights against your peers. This question is worth 1 point in this category: bulk insert. We'd love to give you credit for your own question and answer. To submit a QOTD, simply log in to the Contribution Center. |
|
|
| |
ADVERTISEMENT | Introducing Microsoft SQL Server 2016: Mission-Critical Applications, Deeper Insights, Hyperscale Cloud With Microsoft SQL Server 2016, a variety of new features and enhancements to the data platform deliver breakthrough performance, advanced security, and richer, integrated reporting and analytics capabilities. In this ebook, we introduce new security features: Always Encrypted, Row-Level Security, and dynamic data masking; discuss enhancements that enable you to better manage performance and storage: TemDB configuration, query store, and Stretch Database Get your copy from Amazon today. | e | |
|
|
|
|
|
| Yesterday's Question of the Day |
| Yesterday's Question (by Steve Jones): For President's Day, which one of these is President George H. W. Bush? Answer: SELECT POWER(3,4) - 40 Explanation: President George H. W. Bush was the 41st President of the United States. Of the items, only POWER(3,4) - 40 gets 41.
» Discuss this question and answer on the forums |
|
|
| | Sergiy Fox from SQLServerCentral.com The function is based on well known Tally function published on SSC. I added parameters to make it more flexible and easier to use in complicated queries. Use cases: Sequential numbers from 1 to 100, step 1: select N from dbo.TallyGenerator (1,100, null, 1) 100 sequential numbers starting from 15 , step 1: select N from dbo.TallyGenerator (15,null, 100, 1) Counting down from 100 to 1, step 11: select N from dbo.TallyGenerator (100,1, null, -11) Top 100 numbers less or equal 256: select N from dbo.TallyGenerator (256, null, 100,-1) More » |
|
|
| Database Pros Who Need Your Help |
| Here's a few of the new posts today on the forums. To see more, visit the forums. Restore DB takes a coffee break to open file explorer - Hi all! This has been a problem sice my first SQL DB's in 2005. When i want trestore from device, it's really... Log shipping from sql 2008 to 2016? - Hello, We want to do a migration, these databases range from 100-500 gigs of data, and want to log ship from... How do I state my foreign key in my Create Table? - Hi Expert, I tried to create a table with foreign key but I am not sure why it is giving me... Linking rows based on matching fields - I have a sub-set of customers : CREATE TABLE #temptable ( int, nvarchar(20), date, nvarchar(50), nvarchar(10)... Multiple Files & disks - One of our production DB is very new and growing at a rate of 8GB per month which is in... Optimizing a query - This needs to be a SQL view for C# to consume. I am sure there is a better way to... Trouble with openxml query - Hello, I have an XML document formed like the attachment. I have it in a table which ddl is: CREATE... SQL ALwaysOn Dependencies - Hi all, Im having a strange problem. I have 2 Availability Groups set up both of which are working. Except 1... Where is that CPU gone? (Profiler Trace) - I have a stored procedure (uspRetrieveMonthlyDiagnosticsForFrontEnd) that takes about 6 seconds. Almost all processing is done through a sub procedure (uspRetrieveMonthlyDiagnostics)... sql debugger enabling in the production server without admin privileges? - Hi I am trying to help my DBA so that I get the DEBUGGER enabled ? The caveats are: 1. It is... redesigning table to accommodate new data types - i have a table in which there is column called Marks of type int. This is used to save the... Corruption when restoring/renaming databases - Hi i am trying to move databases to new SSD drives but some have dozens of logical file and are... Need to migrate a databases from DB2 to SQL server - Hi, Need a help in Migrating a database of 100 GB from DB2 to Sql server. Client would extract the data from... Weird Resource Database Message in Error Log - I'm getting this message in the error-log each time on a SQL restart. The resource database has been detected in two... Invalid length parameter passed to the LEFT or SUBSTRING function. Trying to remove everything after the period - I have a table that has Machinename that looks like the following: TH1239.CDB.LOCAL TH1238.CDB.LOCAL TH1237.CDB.LOCAL TH1236.CDB.LOCAL TSB1-TLA.CDB.LOCAL TSB2-TLA.CDB.LOCAL I would like to remove everything after the . SO... Help me see why my trigger is failing - should be simple, but can't see the answer.... - Hi, Had a database migration (SQL 2005 to 2008) about a week ago - don't know if it is even relevant. For... Index Performance - Hi , I have a table with 100 million records with below index structure. CREATE CLUSTERED INDEX IDX_ID ON TEST(ID) CREATE... Exists on where clause - Hi, Sample data to play with Declare @vendor table(IdVenor int,MessageId int); Declare @vendor_customer table(IdVenorCustom int,MessageId int); Declare @Message table(MessageId int, description varchar(4000)); insert into... SSRS Subscription cannot be created because the credentials used... - I am trying to create my first subscription on my SSRS webpage and I'm getting an error that says "Subscriptions... Many to Many Relationship Design Query - Hi, I have a table - TagDetail - that stores the many-to-many relationship between Tag, ParentTask, and ChildTask tables. Basically any 'Tag' can relate... |
|
| This email has been sent to newsletter@newslettercollector.com. To be removed from this list, please click here. If you have any problems leaving the list, please contact the webmaster@sqlservercentral.com.
| This newsletter was sent to you because you signed up at SQLServerCentral.com. Feel free to forward this to any colleagues that you think might be interested. If you have received this email from a colleague, you can register to receive it here.
| This transmission is ©2015 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved. Contact: webmaster@sqlservercentral.com |
|
|